corala 2 роки тому
джерело
коміт
c8b14b57fb
17 змінених файлів з 1012 додано та 202 видалено
  1. +18
    -0
      src/pages.json
  2. +45
    -5
      src/pages/customer/addLedlook.vue
  3. +43
    -9
      src/pages/customer/ledList.vue
  4. +43
    -14
      src/pages/customer/selectHousesource.vue
  5. +55
    -15
      src/pages/my/applyHistory.vue
  6. +27
    -14
      src/pages/my/apply_baojie.vue
  7. +153
    -0
      src/pages/my/changePrice_apply.vue
  8. +63
    -28
      src/pages/my/changePrice_check.vue
  9. +50
    -29
      src/pages/my/contact_check.vue
  10. +13
    -6
      src/pages/my/myapply.vue
  11. +38
    -12
      src/pages/my/networkquery_detail.vue
  12. +6
    -1
      src/pages/otherPage/companywarReport.vue
  13. +113
    -0
      src/pages/otherPage/ledList.vue
  14. +2
    -1
      src/pages/otherPage/rent.vue
  15. +51
    -65
      src/pages/otherPage/rentDetail.vue
  16. +264
    -0
      src/pages/otherPage/shouding.vue
  17. +28
    -3
      src/pages/tabs/customer.vue

+ 18
- 0
src/pages.json Переглянути файл

@@ -100,6 +100,12 @@
"navigationBarTitleText": "我的申请",
"navigationBarTextStyle": "black"
}
}, {
"path": "changePrice_apply",
"style": {
"navigationBarTitleText": "改价申请",
"navigationBarTextStyle": "black"
}
}, {
"path": "mytodo",
"style": {
@@ -208,6 +214,18 @@
"navigationBarTitleText": "出租专区详情",
"navigationBarTextStyle": "black"
}
}, {
"path": "ledList",
"style": {
"navigationBarTitleText": "带看历史",
"navigationBarTextStyle": "black"
}
}, {
"path": "shouding",
"style": {
"navigationBarTitleText": "收定",
"navigationBarTextStyle": "black"
}
}, {
"path": "jjrent",
"style": {


+ 45
- 5
src/pages/customer/addLedlook.vue Переглянути файл

@@ -17,7 +17,7 @@
</view>
</view>
</view>
<view class="submit-btn">提交</view>
<view class="submit-btn" @click="submit">提交</view>
</view>
</template>
<script>
@@ -55,21 +55,25 @@
minute: true,
second: true
},
customStyle:{
customStyle: {
maxHeight:'200rpx',
padding: '20rpx',
fontSize: '30rpx',
borderBottom:'1px solid #e0e0e0'
}
},
customerId: '',
roomId: ''
};
},
onLoad(options) {
this.customerId = options.customerId;
},
onShow() {
let houseSource = wx.getStorageSync('houseSource')
if(houseSource&&houseSource.address){
this.form.address = houseSource.address
this.roomId = houseSource.roomId
wx.setStorageSync('houseSource','')
}
},
methods: {
@@ -83,7 +87,43 @@
this.form.date = e.year + '-'+e.month + '-'+e.day+ ' '+e.hour+':'+e.minute+':'+e.second
},
submit() {
if(this.flag) return;
this.flag = true;
if(this.form.address==''){
uni.showToast({
title: '请选择房源地址',
icon: 'none'
})
return ;
}
if(this.form.date==''){
uni.showToast({
title: '请选择带看时间',
icon: 'none'
})
return ;
}
let body={
"viewTime": this.form.date,
"customerId": this.customerId,
"roomId": this.roomId,
"houseAddress": this.form.address
}
this.$u.api.customerView({body:body}).then((res)=>{
// console.log(res)
this.flag = false;
if(res.ErrNo=='0000'){
uni.showToast({
title: res.ErrMsg,
icon: 'none'
})
setTimeout(function() {
wx.switchTab({
url: '/pages/tabs/customer'
})
}, 1000);
}
})
},
sexChange(){
console.log(this.form.sex)


+ 43
- 9
src/pages/customer/ledList.vue Переглянути файл

@@ -3,11 +3,11 @@
<view class="list-item" v-for="(item,index) in listData" :key="index">
<view class="top">
<view class="top-left">
<image class="icon" src="/static/kehu/person_gray.png" mode="" />张晨
<image class="icon" src="/static/kehu/person_gray.png" mode="" />{{item.personName}}
</view>
<view class="time">2022-10-26 10:20:00</view>
<view class="time">{{item.customerViewTime}}</view>
</view>
<view class="bot">惠中北里 106号楼 24层</view>
<view class="bot">{{item.address}}</view>
</view>
</view>
</template>
@@ -15,17 +15,52 @@
export default {
data() {
return {
listData: [{},{},{},{}]
listData: [],
pageNo: 1,
pageSize: 10,
loadDone: false,
customerId:''
};
},
onLoad(options) {
},
onShow() {
onReachBottom() {
this.getList();
},
methods: {
getList(){
if (this.loadDone) return;
let body = {
pageNo:this.pageNo,
pageSize:this.pageSize,
customerId: this.customerId,
}
this.$u.api.customerViewHistory({body:body}).then((res)=>{
// console.log(res)
if(res.result&&res.result.length){
if(this.pageNo==1){
this.listData = res.result
}else{
this.listData = [...this.listData, ...res.result];
}
if(res.result.length<this.pageSize){
this.loadDone = true;
return ;
}
this.pageNo += 1;
this.loadDone = false
}else{
this.loadDone = true;
if(this.pageNo==1){
this.listData = []
}
}
})
},
},
methods: {},

onLoad: function(options) {
this.customerId=options.customerId
this.getList();
},
onHide: function() {},
};
@@ -67,7 +102,6 @@
}
}
.bot{
height: 42rpx;
font-size: 30rpx;
font-weight: 400;
color: #333333;


+ 43
- 14
src/pages/customer/selectHousesource.vue Переглянути файл

@@ -7,11 +7,11 @@
<view class="list-item" @click="selectItem(item)" v-for="(item,index) in listData" :key="index">
<view class="person-info">
<image class="icon" src="/static/kehu/person_gray.png" mode="" />
<view class="name u-line-1">{{item.name}}</view>
<view class="name u-line-1">{{item.personName}}</view>
</view>
<view class="house u-line-1">惠中北里 106号楼 24层</view>
<view class="house u-line-1">{{item.address}}</view>
<view class="right">
<view class="house">张26D</view>
<view class="house">{{item.roomNum}}</view>
<image class="path" src="/static/path.png" mode="" />
</view>
</view>
@@ -23,30 +23,59 @@
data() {
return {
keyword: '',
listData: [{
address:'惠中北里 106号楼 24层',
name:'张晨',
},{},{},{}]
listData: [],
pageNo: 1,
pageSize: 10,
loadDone: false,
};
},
onLoad(options) {
},
onShow() {
},
created(){
this.getList()
},
onReachBottom() {
this.getList();
},
methods: {
selectItem(item){
wx.setStorageSync('houseSource',item)
// wx.navigateTo({
// url:'/pages/customer/addLedlook'
// })
wx.navigateBack()
},
getList(){
if (this.loadDone) return;
let params = {
pageNo:this.pageNo,
pageSize:this.pageSize,
message:this.keyword
}
this.$u.api.roomList({body:params}).then((res)=>{
console.log(res)
if(res.result&&res.result.length){
if(this.pageNo==1){
this.listData = res.result
}else{
this.listData = [...this.listData, ...res.result];
}
if(res.result.length<this.pageSize){
this.loadDone = true;
return ;
}
this.pageNo += 1;
this.loadDone = false
}else{
this.loadDone = true;
if(this.pageNo==1){
this.listData = []
}
}
})
}
},

onLoad: function(options) {
},
onHide: function() {},
};
</script>



+ 55
- 15
src/pages/my/applyHistory.vue Переглянути файл

@@ -3,15 +3,24 @@
<view class="list-item" v-for="(item,index) in listData" :key="index">
<view class="top">
<view class="top-left">
<image class="icon" src="/static/kehu/person_gray.png" mode="" />{{item.name}}
<image class="icon" src="/static/kehu/person_gray.png" mode="" />{{item.applyName}}
<!-- 服务类别 40保洁 41维修 43 带房42 改价 45 成交合同 46 定金合同 -->
<template v-if="item.serviceType==40">(保洁)</template>
<template v-if="item.serviceType==41">(维修)</template>
<template v-if="item.serviceType==42">(改价)</template>
<template v-if="item.serviceType==43">(带房)</template>
<template v-if="item.serviceType==45">(成交合同)</template>
<template v-if="item.serviceType==46">(定金合同)</template>
</view>
<view class="time">{{item.time}}</view>
<view class="time">{{item.createTime}}</view>
</view>
<view class="bot">{{item.address}}</view>
<view class="status-box">
<view class="left">由 {{item.person}} 提交申请</view>
<view class="btn success-btn" v-if="item.status==1">审核通过</view>
<view class="btn fail-btn" v-else-if="item.status==0">未通过</view>
<view class="left">由 {{item.applyName}} 提交申请</view>
<!-- 审批状态0未审核 1通过 2 拒绝 -->
<view class="btn success-btn" v-if="item.reviewName[0].secondApplyStatus==1">审核通过</view>
<view class="btn fail-btn" v-else-if="item.reviewName[0].secondApplyStatus==0">未审核</view>
<view class="btn fail-btn" v-else-if="item.reviewName[0].secondApplyStatus==2">未通过</view>
<view class="btn dealing-btn" v-else>处理中</view>
</view>
</view>
@@ -21,23 +30,54 @@
export default {
data() {
return {
listData: [{
name:'张晨',
status: 0,address:'惠中北里 106号楼 24层',person:'marry',time:'2022-10-26 10:20:00'
},{name:'张晨',
status: 0,address:'惠中北里 106号楼 24层',person:'marry',time:'2022-10-26 10:20:00'},
{name:'张晨',
status: 0,address:'惠中北里 106号楼 24层',person:'marry',time:'2022-10-26 10:20:00'},
{name:'张晨',
status: 0,address:'惠中北里 106号楼 24层',person:'marry',time:'2022-10-26 10:20:00'}]
listData: [],
pageNo: 1,
pageSize: 10,
loadDone: false,
};
},
onLoad(options) {
this.getList()
},
onShow() {
},
methods: {},
onReachBottom() {
this.getList();
},
methods: {
getList(){
if (this.loadDone) return;
let body = {
pageNo:this.pageNo,
pageSize:this.pageSize,
applyStatus: '',
createTimeBegin: '',
createTimeEnd:''
}
this.$u.api.cleanRepairHistory({body:body}).then((res)=>{
// console.log(res)
if(res.result&&res.result.length){
if(this.pageNo==1){
this.listData = res.result
}else{
this.listData = [...this.listData, ...res.result];
}
if(res.result.length<this.pageSize){
this.loadDone = true;
return ;
}
this.pageNo += 1;
this.loadDone = false
}else{
this.loadDone = true;
if(this.pageNo==1){
this.listData = []
}
}
})
},
},
};
</script>



+ 27
- 14
src/pages/my/apply_baojie.vue Переглянути файл

@@ -1,12 +1,11 @@
<template>
<view class="container">
<view class="form-box">
<view class="item">
<view class="item" @click="topage">
<view class="label">房屋地址</view>
<view class="input">
<u-input height="102" @click="addressShow = true" type="text" disabled input-align="right" v-model="form.houseAddressName" placeholder="请选择房屋地址"></u-input>
<image class="path" src="/static/path.png" mode="" @click="addressShow = true"/>
<u-select confirm-color="#FF6D25" v-model="addressShow" :list="sourceList" @confirm="confirmSource"></u-select>
<view class="input" >
<u-input height="102" @click="topage" type="text" disabled input-align="right" v-model="form.houseAddress" placeholder="请选择房屋地址"></u-input>
<image class="path" @click="topage" src="/static/path.png" mode="" />
</view>
</view>
<view class="item">
@@ -48,7 +47,6 @@
data() {
return {
calendarShow: false,
addressShow: false,
params: {
year: true,
month: true,
@@ -59,7 +57,6 @@
},
form: {
houseAddress: '',
houseAddressName: '',
deptName: '开发部一处',
applyPerson:'张三地方',
date:'',
@@ -88,25 +85,41 @@
padding: '20rpx',
fontSize: '30rpx',
borderBottom:'1px solid #e0e0e0'
}
},
serviceType: 40//服务类别 40保洁 41维修
};
},
onLoad(options) {
this.serviceType = options.type
},
onShow() {
let houseSource = wx.getStorageSync('houseSource')
if(houseSource&&houseSource.address){
this.form.houseAddress = houseSource.address
this.roomId = houseSource.roomId
wx.setStorageSync('houseSource','')
}
},
methods: {
topage(){
wx.navigateTo({
url: '/pages/customer/selectHousesource'
})
},
dateConfirm(e){
console.log(e)
this.form.date = e.year + '-'+e.month + '-'+e.day+ ' '+e.hour+':'+e.minute+':'+e.second
},
confirmSource(e){
console.log(e)
this.form.houseAddress = e[0].value
this.form.houseAddressName = e[0].label
},
submit() {
let params = {
"serviceDate": this.form.date,
"serviceType": this.serviceType,//服务类别 40保洁 41维修
"houseId": this.form.date,
"remark":this.form.mark
}
this.$u.api.cleanRepairApply({body:params}).then((res)=>{
console.log(res)
})
},
},


+ 153
- 0
src/pages/my/changePrice_apply.vue Переглянути файл

@@ -0,0 +1,153 @@
<template>
<view class="container">
<view class="form-box">
<view class="item">
<view class="label">价格</view>
<view class="input">
<u-input :clearable="false" type="text" input-align="right" v-model="form.price" placeholder="请输价格"></u-input>
</view>
</view>
<view class="last-item">
<view class="label">申请理由</view>
<u-input style="flex:1" input-align="right" :custom-style="customStyle" v-model="form.mark" :height="60" :auto-height="true" type="textarea" :clearable="false" placeholder="请输入申请理由"></u-input>
</view>
</view>
<view class="submit-btn" @click="submit">提交</view>
</view>
</template>
<script>
export default {
data() {
return {
form: {
price: '',
mark: ''//备注
},
customStyle:{
maxHeight:'200rpx',
padding: '20rpx',
fontSize: '30rpx',
borderBottom:'1px solid #e0e0e0'
},
roomId: ''
};
},
onLoad(options) {
this.roomId = options.id;
},
onShow() {
},
methods: {
submit() {
if(this.flag) return;
this.flag = true;
if(this.form.price==''){
uni.showToast({
title: '请输入价格',
icon: 'none'
})
return ;
}
if(this.form.mark==''){
uni.showToast({
title: '请输入申请理由',
icon: 'none'
})
return ;
}
let body={
"price": +this.form.price,
"roomId": +this.roomId,
"Remark": this.form.mark
}
this.$u.api.appChangePriceapply({body:body}).then((res)=>{
// console.log(res)
this.flag = false;
if(res.ErrNo=='0000'){
uni.showToast({
title: res.ErrMsg,
icon: 'none'
})
setTimeout(function() {
wx.navigateBack()
}, 1000);
}
})
}
},
};
</script>

<style lang="scss" scoped>
.container {
width: 750rpx;
min-height: 100vh;
background: #F8F8F8;
padding-top: 20rpx;
.form-box{
background: #fff;
padding: 0 30rpx;
.item{
height: 102rpx;
font-size: 30rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
line-height: 102rpx;
color: #333333;
border-bottom: 1px solid #e0e0e0;
display: flex;
align-items: center;
justify-content: space-between;
.label{
width: 120rpx;
margin-right: 20rpx;
}
.input{
width: 380rpx;
display: flex;
align-items: center;
justify-content: flex-end;
.path{
width: 14rpx;
height: 30rpx;
margin-left: 20rpx;
}
.calendar{
width: 40rpx;
height: 40rpx;
margin-left: 20rpx;
}

}
}
.last-item{
display: flex;
.label{
line-height: 102rpx;
font-size: 30rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #333333;
margin-right: 150rpx;
}

}
}
.submit-btn{
width: 690rpx;
height: 88rpx;
line-height: 88rpx;
text-align: center;
background: #FF6D25;
border-radius: 12rpx;
margin-left: 30rpx;
font-size: 32rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #FFFFFF;
position: fixed;
bottom: 90rpx;
}
}
</style>

+ 63
- 28
src/pages/my/changePrice_check.vue Переглянути файл

@@ -2,22 +2,23 @@
<view class="container">
<view class="list-box">
<view class="list-item" @click="selectItem(item)" v-for="(item,index) in listData" :key="index">
<view class="list-item" v-for="(item,index) in listData" :key="index">
<view class="item-info">
<view class="name u-line-1">{{item.name}}</view>
<view class="right">{{item.time}}</view>
<view class="name u-line-1">{{item.applyUserName}}({{item.applyDeptName}})</view>
<view class="right">{{item.applyTime}}</view>
</view>
<view class="item-info">
<view class="address u-line-1">{{item.address}}</view>
<view class="right">台账号:{{item.account}}</view>
<view class="right">台账号:{{item.accountNo}}</view>
</view>
<view class="item-info">
<view class="left ">原价:<view class="oldprice">{{item.oldprice}}</view></view>
<view class="right">改价:<view class="newprice">{{item.newprice}}</view></view>
<view class="left ">原价:<view class="oldprice">{{item.originPrice}}</view></view>
<view class="right">改价:<view class="newprice">{{item.price}}</view></view>
</view>
<view class="btn-box">
<view class="btn pass">通过</view>
<view class="btn refuse">拒绝</view>
<!-- 申请状态【0 未审核 1 已审核 2 拒绝】 -->
<view class="btn pass" @click="clickFun(1,item)">通过</view>
<view class="btn refuse" @click="clickFun(2,item)">拒绝</view>
</view>
</view>
</view>
@@ -27,32 +28,66 @@
export default {
data() {
return {
keyword: '',
listData: [{
address:'惠中北里 106号楼 24层',
name:'张晨张',
person: '张26D',
time: '2021-12-22 18:00:40',
account: '刘604A',
oldprice: 145,
newprice: 100
},{
address:'惠中北里惠中北里惠中北里 106号楼 24层',
name:'张晨张张晨张张晨张张晨张张晨张张晨张',
person: '张26D',
time: '2021-12-22 18:00:40',
account: '刘604A',
oldprice: 145,
newprice: 100
}]
roomId: '',
listData: [],
pageNo: 1,
pageSize: 10,
loadDone: false,
};
},
onLoad(options) {
this.roomId = options.id;
console.log(this.roomId)
this.getList()
},
onShow() {
onReachBottom() {
this.getList();
},
created(){
},
methods: {
// 申请状态【0 未审核 1 已审核 2 拒绝】
clickFun(type,item){
let body = {
processId:item.assignmentId,//房源ID
status:type,//审核状态 0 未审核 1 已审核 2 拒绝
}
this.$u.api.appChangePriceaccept({body:body}).then((res)=>{
// console.log(res)
if(res.ErrNo=='0000'){
uni.showToast({
title: res.ErrMsg,
icon: 'none'
})
this.getList()
}
})
},
getList(){
if (this.loadDone) return;
this.$u.api.appChangePricelist({body:{}}).then((res)=>{
console.log(res)
if(res.result&&res.result.length){
if(this.pageNo==1){
this.listData = res.result
}else{
this.listData = [...this.listData, ...res.result];
}
if(res.result.length<this.pageSize){
this.loadDone = true;
return ;
}
this.pageNo += 1;
this.loadDone = false
}else{
this.loadDone = true;
if(this.pageNo==1){
this.listData = []
}
}
})
}
},
};


+ 50
- 29
src/pages/my/contact_check.vue Переглянути файл

@@ -4,29 +4,29 @@
<view class="list-item" v-for="(item,index) in listData" :key="index">
<view class="item-info">
<view class="name">合同地址</view>
<view class="value u-line-1">惠新西街口11单元302</view>
<view class="value u-line-1">{{item.contractAddress}}</view>
<image class="path" src="/static/path.png" mode="" />
</view>
<view class="item-info">
<view class="name">租约期限</view>
<view class="value">2022.05.19 - 2022.08</view>
<view class="value">{{item.leaseTime}}</view>
</view>
<view class="item-info">
<view class="name">付款方式</view>
<view class="value">月付</view>
<view class="value">{{item.paymentWay}}</view>
</view>
<view class="item-info">
<view class="name">付款方式</view>
<view class="value">月付</view>
<view class="name">付款类型</view>
<view class="value">{{item.paymentType}}</view>
</view>
<view class="item-info">
<view class="name">月租金</view>
<view class="value">6001</view>
<view class="value">{{item.rentPrice}}</view>
</view>
<view class="pay-info">
<view class="subitem" v-for="(subitem,i) in item.paylist" :key="i">
<view class="label">付款日期<view class="value">2022.09.20</view></view>
<view class="label">付款金额<view class="value">房租6001</view></view>
<view class="pay-info" v-if="item.payableList.length">
<view class="subitem" v-for="(subitem,i) in item.payableList" :key="i">
<view class="label">付款日期<view class="value">{{subitem.payableDate}}</view></view>
<view class="label">付款金额<view class="value">房租{{subitem.payableMoney}}</view></view>
</view>
</view>
<view class="btn-box">
@@ -55,33 +55,54 @@
fontWeight: 600,
color: '#333333'
},
listData: [{
address:'惠中北里 106号楼 24层',
name:'张晨张',
person: '张26D',
time: '2021-12-22 18:00:40',
account: '刘604A',
oldprice: 145,
newprice: 100,
paylist: [{},{},{},{},{},{},{},{}],
},{
address:'惠中北里惠中北里惠中北里 106号楼 24层',
name:'张晨张张晨张张晨张张晨张张晨张张晨张',
person: '张26D',
time: '2021-12-22 18:00:40',
account: '刘604A',
oldprice: 145,
newprice: 100,
paylist: [{},{}],
}]
listData: [],
pageNo: 1,
pageSize: 10,
loadDone: false,
};
},
onLoad(options) {

},
onShow() {
},
created() {
this.getList()
},
onReachBottom() {
this.getList();
},
methods: {
getList(){
if (this.loadDone) return;
let params = {
pageNo:this.pageNo,
pageSize:this.pageSize,
}
this.$u.api.getContractList({body:params}).then((res)=>{
console.log(res)
if(res.result&&res.result.length){
if(this.pageNo==1){
this.listData = res.result
}else{
this.listData = [...this.listData, ...res.result];
}
if(res.result.length<this.pageSize){
this.loadDone = true;
return ;
}
this.pageNo += 1;
this.loadDone = false
}else{
this.loadDone = true;
if(this.pageNo==1){
this.listData = []
}
}
})
},
showToast() {
this.$refs.uToast.show({
title: '审核成功',


+ 13
- 6
src/pages/my/myapply.vue Переглянути файл

@@ -5,11 +5,11 @@
<image class="img" src="/static/myapply/apply.png" mode="" />
代房申请
</view>
<view class="tab" @click="topage('apply_baojie')">
<view class="tab" @click="topage('apply_baojie',40)">
<image class="img" src="/static/myapply/clear.png" mode="" />
首次保洁
</view>
<view class="tab" @click="topage('apply_baojie')">
<view class="tab" @click="topage('apply_baojie',41)">
<image class="img" src="/static/myapply/repair.png" mode="" />
首次维修
</view>
@@ -35,10 +35,17 @@
},
methods: {
topage(page){
uni.navigateTo({
url: '/pages/my/'+page
})
topage(page,type){
if(type){
uni.navigateTo({
url: '/pages/my/'+page+'?type='+type
})
}else{
uni.navigateTo({
url: '/pages/my/'+page
})
}
}
}


+ 38
- 12
src/pages/my/networkquery_detail.vue Переглянути файл

@@ -1,33 +1,33 @@
<template>
<view class="container">
<view class="info-box">
<view class="info-box" v-for="(item,index) in listData" :key="index">
<view class="info">
<view class="label">公司名称:</view>
<view class="value">方正宽带</view>
<view class="value">{{item.companyName}}</view>
</view>
<view class="info">
<view class="label">用户名:</view>
<view class="value">bjadmin</view>
<view class="value">{{item.userName}}</view>
</view>
<view class="info">
<view class="label">密码:</view>
<view class="value">12345678</view>
<view class="value">{{item.password}}</view>
</view>
<view class="info">
<view class="label">有效时间:</view>
<view class="value">2022.05.19 - 2022.08</view>
<view class="value">{{item.startDate}}~{{item.endDate}}</view>
</view>
<view class="info">
<view class="label">联系人:</view>
<view class="value">test</view>
<view class="value">{{item.linkPerson}}</view>
</view>
<view class="info">
<view class="label">电话:</view>
<view class="value">18610029470</view>
<view class="value">{{item.mobile}}</view>
</view>
<view class="info" style="margin-bottom:0">
<view class="label">备注:</view>
<view class="value">test</view>
<view class="value">{{item.remark}}</view>
</view>
</view>
</view>
@@ -36,6 +36,10 @@
export default {
data() {
return {
pageNo: 1,
pageSize: 10,
loadDone: false,
listData: []
};
},
onLoad(options) {
@@ -47,11 +51,32 @@
},
methods: {
getData(id){
this.$u.api.findNetWork({body:{houseId:id}}).then((res)=>{
console.log(res)
// if(res.result&&res.result.length){}
let body = {
houseId:id,
pageNo:this.pageNo,
pageSize:this.pageSize
}
this.$u.api.findNetWork({body:body}).then((res)=>{
// console.log(res)
if(res.result&&res.result.length){
if(this.pageNo==1){
this.listData = res.result
}else{
this.listData = [...this.listData, ...res.result];
}
if(res.result.length<this.pageSize){
this.loadDone = true;
return ;
}
this.pageNo += 1;
this.loadDone = false
}else{
this.loadDone = true;
if(this.pageNo==1){
this.listData = []
}
}
})

}
},

@@ -67,6 +92,7 @@
.info-box{
background-color: #fff;
padding: 30rpx;
margin-bottom: 20rpx;
}
.info{
display: flex;


+ 6
- 1
src/pages/otherPage/companywarReport.vue Переглянути файл

@@ -13,7 +13,7 @@
<image class="house-icon" src="/static/house.png" mode="" />
{{item.deptName}}
</view>
<view class="right">
<view class="right" @click="topage('/pages/my/mywarReport')">
我的战报
<image class="path" src="/static/path.png" mode="" />
</view>
@@ -102,6 +102,11 @@
this.loadDone = false
this.getList()
},
topage(page){
uni.navigateTo({
url: page
})
}
},
};
</script>


+ 113
- 0
src/pages/otherPage/ledList.vue Переглянути файл

@@ -0,0 +1,113 @@
<template>
<view class="container">
<view class="list-item" v-for="(item,index) in listData" :key="index">
<view class="top">
<view class="top-left">
<image class="icon" src="/static/kehu/person_gray.png" mode="" />{{item.personName}}
</view>
<view class="time">{{item.customerViewTime}}</view>
</view>
<view class="bot">{{item.address}}</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
listData: [],
pageNo: 1,
pageSize: 10,
loadDone: false,
roomId:''
};
},
onReachBottom() {
this.getList();
},
methods: {
getList(){
if (this.loadDone) return;
let body = {
pageNo:this.pageNo,
pageSize:this.pageSize,
roomId: this.roomId
}
this.$u.api.housecustomerViewHistory({body:body}).then((res)=>{
// console.log(res)
if(res.result&&res.result.length){
if(this.pageNo==1){
this.listData = res.result
}else{
this.listData = [...this.listData, ...res.result];
}
if(res.result.length<this.pageSize){
this.loadDone = true;
return ;
}
this.pageNo += 1;
this.loadDone = false
}else{
this.loadDone = true;
if(this.pageNo==1){
this.listData = []
}
}
})
},
},

onLoad: function(options) {
this.roomId=options.id
this.getList();
},
onHide: function() {},
};
</script>

<style lang="scss" scoped>
.container{
width: 750rpx;
min-height: 100vh;
background: #F8F8F8;
padding-top: 20rpx;
.list-item{
background: #fff;
margin-bottom: 20rpx;
padding: 30rpx;
font-family: PingFangSC-Regular, PingFang SC;
.top{
display: flex;
justify-content: space-between;
align-items: center;
.top-left{
display: flex;
align-items: center;
font-size: 30rpx;
font-weight: 400;
color: #333333;
.icon{
width: 28rpx;
height: 30rpx;
margin-right: 12rpx;
}
}
.time{
height: 42rpx;
font-size: 30rpx;
font-weight: 400;
color: #666666;
line-height: 42rpx;
}
}
.bot{
font-size: 30rpx;
font-weight: 400;
color: #333333;
line-height: 42rpx;
margin-top: 20rpx;
}
}
}
</style>

+ 2
- 1
src/pages/otherPage/rent.vue Переглянути файл

@@ -212,8 +212,9 @@
this.getList()
},
topage(item){
uni.setStorageSync('roomInfo',item)
uni.navigateTo({
url: '/pages/otherPage/rentDetail?id=' + item.id
url: '/pages/otherPage/rentDetail?id=' + item.roomId
})
},
searchFun(){


+ 51
- 65
src/pages/otherPage/rentDetail.vue Переглянути файл

@@ -1,61 +1,61 @@
<template>
<view class="container">
<view class="pic-wrap" >
<u-swiper height="460" @click="preview" :list="picList" :autoplay="true" mode="number" indicator-pos="bottomRight"></u-swiper>
<u-swiper height="460" :border-radius="0" @click="preview" :list="picList" :autoplay="true" mode="number" indicator-pos="bottomRight"></u-swiper>
</view>
<view class="house-info">
<view class="top-cont">
<view class="title" @click="tomap"><view class="u-line-1">莲竹花园8号楼1层莲竹花园8号楼1层莲竹花园8号楼1层</view>
<view class="title" @click="tomap(roomInfo.address)"><view class="u-line-1">{{roomInfo.address}}</view>
<image class="map" src="/static/czDetail/map.png" mode="" /></view>
<view class="call-info" @click="call">
<image class="call" src="/static/czDetail/call.png" mode="" />杜鹏飞
<view class="call-info" @click="call(item.tellPhone)">
<image class="call" src="/static/czDetail/call.png" mode="" />{{roomInfo.personName}}
</view>
</view>
<view class="mid-cont">
<view class="item">
<view class="item-val">2改3</view>
<view class="item-val">{{roomInfo.houseType}}</view>
<view class="item-type">房型</view>
</view>
<view class="item">
<view class="item-val">正规间</view>
<view class="item-val">{{roomInfo.roomType}}</view>
<view class="item-type">户型</view>
</view>
<view class="item">
<view class="item-val">18㎡</view>
<view class="item-val">{{roomInfo.area}}㎡</view>
<view class="item-type">面积</view>
</view>
</view>
<view class="bot-cont">
<view class="item-btn color1">改价历史</view>
<view class="item-btn color2">改价审核</view>
<view class="item-btn color3">成交合同</view>
<view class="item-btn color1" @click="topage()">改价历史</view>
<view class="item-btn color2" @click="topage('my/changePrice_check')">改价审核</view>
<view class="item-btn color3" @click="topage()">成交合同</view>
</view>
</view>
<view class="detail-info">
<view class="info-item"><view class="label">台账号:</view>刘572A</view>
<view class="info-item"><view class="label">区域:</view>空巷</view>
<view class="info-item"><view class="label">部门:</view>二区五部</view>
<view class="info-item"><view class="label">代理人:</view>杜鹏飞</view>
<view class="info-item"><view class="label">剩余期限:</view>10个月</view>
<view class="info-item"><view class="label">截止日期:</view>2023-03-20</view>
<view class="info-item"><view class="label">台账号:</view>{{roomInfo.roomNum}}</view>
<view class="info-item"><view class="label">区域:</view>{{roomInfo.district}}</view>
<view class="info-item"><view class="label">部门:</view>{{roomInfo.deptName}}</view>
<view class="info-item"><view class="label">代理人:</view>{{roomInfo.personName}}</view>
<view class="info-item"><view class="label">剩余期限:</view>{{roomInfo.remainderPeriod}}个月</view>
<view class="info-item"><view class="label">截止日期:</view>{{roomInfo.houseDetails}}</view>
</view>
<!-- 房间信息 -->
<view class="room-info">
<view class="room-info" v-if="roomInfo.otherRoom.length">
<view class="title">房间信息</view>
<view class="item" v-for="(item,index) in roomList" :key="index">
<view class="item" v-for="(item,index) in roomInfo.otherRoom" :key="index">
<view class="left">
<image class="sex" v-if="item.sex==0" src="/static/czDetail/man.png" mode="" />
<image class="sex" v-if="item.sex=='男'" src="/static/czDetail/man.png" mode="" />
<image class="sex" v-else src="/static/czDetail/woman.png" mode="" />
<view class="number">{{item.number}}</view>
<view class="other-info">卧·宁371A|{{item.area||0}}㎡|{{item.direction||''}}</view>
<view class="number">0{{item.roomType}}</view>
<view class="other-info">卧·{{item.accountNum}}|{{item.area||0}}㎡|{{item.orientation||''}}</view>
</view>
<view class="right">
{{item.sex==0?'男':'女'}}|{{item.zhiye||''}}
{{item.sex}}|{{item.job||''}}
</view>
</view>
</view>
<view class="bottom-box">
<view class="item">
<view class="item" @click="topage('my/changePrice_apply')">
<image class="item-icon" src="/static/czDetail/money.png" mode="" />
<view class="item-text">改价申请</view>
</view>
@@ -65,12 +65,12 @@
<view class="item-text">门锁密码</view>
</view>
<view class="line"></view>
<view class="item">
<view class="item" @click="topage('otherPage/shouding')">
<image class="item-icon" src="/static/czDetail/money1.png" mode="" />
<view class="item-text">收定</view>
</view>
<view class="line"></view>
<view class="item">
<view class="item" @click="topage('otherPage/ledList')">
<image class="item-icon" src="/static/czDetail/book.png" mode="" />
<view class="item-text">带看历史</view>
</view>
@@ -81,61 +81,50 @@
export default {
data() {
return {
picList: [
'https://cdn.uviewui.com/uview/swiper/1.jpg',
'https://cdn.uviewui.com/uview/swiper/2.jpg',
'https://cdn.uviewui.com/uview/swiper/3.jpg',
],
roomList: [{
area: '20',
direction: '朝南',
sex: '0',
zhiye : '白领',
number: '01'
},{
area: '13',
direction: '朝南',
sex: '0',
zhiye : '学生',
number: '02'
},{
area: '23',
direction: '朝南',
sex: '1',
zhiye : '白领',
number: '03'
}],
detailInfo: {
account: '',

}
picList: [],
roomId:'',
roomInfo:{}
};
},
onLoad(options) {
this.roomId = options.id;
this.roomInfo = {}
this.roomInfo = uni.getStorageSync('roomInfo')
console.log(this.roomInfo)
this.roomPictureList()
},
onShow() {
},
methods: {
topage(){
// uni.navigateTo({
// url: "/pages/merchant/merchant",
// });
// 图片列表
roomPictureList(){
this.$u.api.roomPictureList({body:{roomId:this.roomId}}).then((res)=>{
// 图片类型10 .封面 11.轮播图
if(res.result&&res.result.length){
this.picList = res.result.map(item=>item.pictureUrl)
}
})
},
topage(page){
uni.navigateTo({
url: "/pages/" + page +'?id='+this.roomId,
});
},
tomap(){
tomap(info){
const latitude = 39.9219
const longitude = 116.44355
wx.openLocation({
latitude,
longitude,
name: '望京soho',
name: info,
scale: 18
})
},
call(){
call(tel){
wx.makePhoneCall(
{
phoneNumber: '18339694416'
phoneNumber: tel
}
)
},
@@ -148,9 +137,6 @@
})
}
},

onLoad: function(options) {
},
onHide: function() {},
};
</script>
@@ -160,7 +146,7 @@
width: 750rpx;
min-height: 100vh;
background: #f8f8f8;
padding-bottom: 210rpx;
padding-bottom: 150rpx;
.pic-wrap{
width: 750rpx;
height: 460rpx;


+ 264
- 0
src/pages/otherPage/shouding.vue Переглянути файл

@@ -0,0 +1,264 @@
<template>
<view class="container">
<view class="form-box">
<view class="item">
<view class="label">客户姓名</view>
<view class="input">
<u-input :clearable="false" type="text" input-align="right" v-model="form.customerName" 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.tel" 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>
</view>
</view>
<view class="item">
<view class="label">定金金额(元)</view>
<view class="input">
<u-input :clearable="false" type="text" input-align="right" v-model="form.money" 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.tel" 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.tel" 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.tel" 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.tel" placeholder="请输入有线费"></u-input>
</view>
</view>
<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>
<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>
</view>
<view class="item">
<view class="label">租约期限</view>
<view class="input" >
<u-input height="100" @click="openCalendar(0)" disabled input-align="right" v-model="form.starDate" placeholder="请选择开始时间"></u-input>
<image class="calendar" @click="openCalendar(0)" src="/static/kehu/calendar.png" mode=""/>
<u-calendar :min-date="form.mindate" :max-date="form.maxdate" v-model="calendarShow1" mode="date" @change="dateConfirm1"></u-calendar>
</view>
</view>
<view class="item">
<view class="label">至</view>
<view class="input" >
<u-input height="100" @click="openCalendar(1)" disabled input-align="right" v-model="form.endDate" placeholder="请选择结束时间"></u-input>
<image class="calendar" @click="openCalendar(1)" src="/static/kehu/calendar.png" mode=""/>
</view>
</view>
<view class="item">
<view class="label">签约时间</view>
<view class="input" >
<u-input height="100" @click="calendarShow2 = true" disabled input-align="right" v-model="form.date" placeholder="请选择签约时间"></u-input>
<image class="calendar" @click="calendarShow2 = true" src="/static/kehu/calendar.png" mode=""/>
<u-calendar v-model="calendarShow2" maxdate='2099-12-31' mode="date" @change="dateConfirm2"></u-calendar>
</view>
</view>
</view>
<view class="submit-btn" @click="submit">提交</view>
</view>
</template>
<script>
export default {
data() {
return {
mindate: '',
maxdate: '2099-12-31',
calendarShow1: false,
calendarShow2: false,
payTypeShow: false,
form: {
customerName: '',
customerType: '',//类型-个人:1,单位:2
mobile: '',
money: '',
houseAddress: '',
houseAddressName: '',
deptName: '开发部一处',
applyPerson:'张三地方',
endDate:'',
starDate:'',
date: '',
paymentWay:'',
payTypeName:''
},
payTypeList: [
{
value: '1',
label: '月付'
},
{
value: '2',
label: '季付'
},
{
value: '3',
label: '半年付'
},
{
value: '4',
label: '年付'
},
],
type:0,
customStyle:{
maxHeight:'200rpx',
padding: '20rpx',
fontSize: '30rpx',
borderBottom:'1px solid #e0e0e0'
},
roomId: ''
};
},
onLoad(options) {
this.roomId = options.id;
},
onShow() {
},
methods: {
openCalendar(type){
if(type==0){
this.type = 0
this.form.mindate = ''
this.form.maxdate = this.form.endDate
}else{
this.type = 1
this.form.mindate = this.form.starDate
this.form.maxdate = '2099-12-31'
}
this.calendarShow1 = true;
},
dateConfirm1(e){
if(this.type==0){
this.form.starDate = e.result
}else{
this.form.endDate = e.result
}
},
dateConfirm2(e){
this.form.date = e.result
},
confirmPaytype(e){
console.log(e)
this.form.paymentWay = e[0].value
this.form.payTypeName = e[0].label
},
submit() {
let body={
"roomId": this.roomId,
"customerType": this.form.customerType,
"customerName": this.form.customerName,
"mobile": this.form.mobile,
"money": this.form.money,
"paymentWay": this.form.paymentWay
}
this.$u.api.deposit({body:body}).then((res)=>{
// 图片类型10 .封面 11.轮播图
if(res.result&&res.result.length){
this.picList = res.result.map(item=>item.pictureUrl)
}
})
},
},
};
</script>

<style lang="scss" scoped>
.container {
width: 750rpx;
min-height: 100vh;
background: #F8F8F8;
padding-top: 20rpx;
.form-box{
background: #fff;
padding: 0 30rpx 150rpx;
.item{
height: 100rpx;
font-size: 30rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #333333;
border-bottom: 1px solid #e0e0e0;
display: flex;
align-items: center;
justify-content: space-between;
.label{
width: 200rpx;
margin-right: 20rpx;
}
.input{
width: 380rpx;
display: flex;
align-items: center;
justify-content: flex-end;
.path{
width: 14rpx;
height: 30rpx;
margin-left: 20rpx;
}
.calendar{
width: 40rpx;
height: 40rpx;
margin-left: 20rpx;
}

}
}
.last-item{
display: flex;
.label{
line-height: 102rpx;
font-size: 30rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #333333;
margin-right: 150rpx;
}

}
}
.submit-btn{
width: 690rpx;
height: 88rpx;
line-height: 88rpx;
text-align: center;
background: #FFB692;
border-radius: 12rpx;
margin-left: 30rpx;
font-size: 32rpx;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color: #FFFFFF;
position: fixed;
bottom: 30rpx;
}
}
</style>

+ 28
- 3
src/pages/tabs/customer.vue Переглянути файл

@@ -28,9 +28,9 @@
</view>
</view>
<view class="item-bot">
<view class="btn"><image class="icon" src="/static/kehu/edit.png" mode="" />带看录入</view><view class="border"></view>
<view class="btn"><image class="icon" src="/static/kehu/edit.png" mode="" />放弃</view><view class="border"></view>
<view class="btn"><image class="icon" src="/static/kehu/edit.png" mode="" />带看记录</view>
<view class="btn" @click="topage('addLedlook',item.customerId)"><image class="icon" src="/static/kehu/edit.png" mode="" />带看录入</view><view class="border"></view>
<view class="btn" @click="updateStatus(item.customerMobile)"><image class="icon" src="/static/kehu/edit.png" mode="" />放弃</view><view class="border"></view>
<view class="btn" @click="topage('ledList',item.customerId)"><image class="icon" src="/static/kehu/edit.png" mode="" />带看记录</view>
</view>
</view>
</view>
@@ -50,12 +50,14 @@
</view>
</view>
</u-popup>
<u-modal v-model="modalShow" content="您确认通过该审核?" :show-cancel-button="true" confirm-color="#FF6D25" title="确认操作" @confirm="modalConfirm" ref="uModal" :async-close="true"></u-modal>
</view>
</template>
<script>
export default {
data() {
return {
modalShow: false,
keyword: '',
listData: [],
searchForm: {
@@ -101,6 +103,24 @@
this.huxingList = this.huxingList.concat(res.result.houseType)
})
},
modalConfirm(){
this.$u.api.updateStatus({body:{customerMobile:this.tel}}).then((res)=>{
console.log(res)
if(res.ErrNo=='0000'){
uni.showToast({
title: res.ErrMsg,
icon: 'none'
})
this.getcustomerList()
}
this.modalShow= false
})
},
// 放弃用户
updateStatus(tel){
this.modalShow= true
this.tel = tel
},
search(){
this.pageNo = 1
this.loadDone = false
@@ -180,6 +200,11 @@
uni.navigateTo({
url: '/pages/customer/addCustomer'
})
},
topage(page,id){
uni.navigateTo({
url: '/pages/customer/'+page+'?customerId='+ id
})
}
},



Завантаження…
Відмінити
Зберегти