Browse Source
Merge branch 'devlop' of http://git.qniao.cn/dengxiongfei/paper-shopkeeper-app into devlop
devlop
Merge branch 'devlop' of http://git.qniao.cn/dengxiongfei/paper-shopkeeper-app into devlop
devlop
5 changed files with 269 additions and 257 deletions
Split View
Diff Options
-
7pages/client-credit/index.vue
-
21pages/client-detail/index.vue
-
10pages/client/index.nvue
-
484pages/follow-up-records/index.vue
-
4pages/mine/index.vue
@ -1,260 +1,260 @@ |
|||
<template> |
|||
<view class="warpper"> |
|||
<scroll-list ref="list" :option="option" @load="upCallback" @refresh="downCallback" style="background-color: #ffffff"> |
|||
<timeline> |
|||
<timelineItem v-for="(item, index) in list" :key="index"> |
|||
<view class="time"> |
|||
{{item.createTime}} |
|||
</view> |
|||
<view class="tripItem"> |
|||
<view class="row"> |
|||
<view class="title">跟进人:</view> |
|||
<view class="value">{{item.visitorName}}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title">拜访对象:</view> |
|||
<view class="value">{{item.respondent}}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title">沟通内容:</view> |
|||
<view class="value">{{item.content}}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title">备注信息:</view> |
|||
<view class="value">{{item.remark}}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title"></view> |
|||
<view class="value"> |
|||
<image class="icon" src="/static/imgs/client-detail/address-icon.png"></image> |
|||
<text class="location">{{item.address}}</text> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</timelineItem> |
|||
<!-- <view class="see-more"> |
|||
<view class="wrapper"> |
|||
<uni-nav-bar left-icon="back" @clickLeft="back" statusBar fixed title="跟进记录"></uni-nav-bar> |
|||
<scroll-list ref="list" :option="option" @load="upCallback" @refresh="downCallback" style="background-color: #ffffff"> |
|||
<timeline> |
|||
<timelineItem v-for="(item, index) in list" :key="index"> |
|||
<view class="time"> |
|||
{{ item.createTime }} |
|||
</view> |
|||
<view class="tripItem"> |
|||
<view class="row"> |
|||
<view class="title">跟进人:</view> |
|||
<view class="value">{{ item.visitorName }}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title">拜访对象:</view> |
|||
<view class="value">{{ item.respondent }}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title">沟通内容:</view> |
|||
<view class="value">{{ item.content }}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title">备注信息:</view> |
|||
<view class="value">{{ item.remark }}</view> |
|||
</view> |
|||
<view class="row"> |
|||
<view class="title"></view> |
|||
<view class="value"> |
|||
<image class="icon" src="/static/imgs/client-detail/address-icon.png"></image> |
|||
<text class="location">{{ item.address }}</text> |
|||
</view> |
|||
</view> |
|||
</view> |
|||
</timelineItem> |
|||
<!-- <view class="see-more"> |
|||
<text>查看更多</text> |
|||
<image class="icon" :src="!seemoreFlag ? '/static/imgs/client-detail/arrow-up-icon.png' : '/static/imgs/client-detail/arrow-down-icon.png'"></image> |
|||
</view> --> |
|||
</timeline> |
|||
</scroll-list> |
|||
<qn-footer fixed height="120rpx"> |
|||
<view class="button-area"> |
|||
<!-- <view class="button button__cancel" @click="back"> |
|||
</timeline> |
|||
</scroll-list> |
|||
<qn-footer fixed height="120rpx"> |
|||
<view class="button-area"> |
|||
<!-- <view class="button button__cancel" @click="back"> |
|||
<text class="text">取消</text> |
|||
</view> --> |
|||
<view class="button button__submit" @click="addTap"> |
|||
<text class="text" style="color: white">新增跟进</text> |
|||
</view> |
|||
</view> |
|||
</qn-footer> |
|||
|
|||
</view> |
|||
<view class="button button__submit" @click="addTap"> |
|||
<text class="text" style="color: white">新增跟进</text> |
|||
</view> |
|||
</view> |
|||
</qn-footer> |
|||
</view> |
|||
</template> |
|||
|
|||
<script> |
|||
import timeline from './timeLine.vue' |
|||
import timelineItem from './timelineItem.vue' |
|||
import qnFooter from '@/components/qn-footer/qn-footer.vue' |
|||
import { go2 } from '@/utils/hook.js' |
|||
import {getVisitRecordList} from '@/apis/followUpRecords.js' |
|||
import { go2, back } from '@/utils/hook.js' |
|||
import { getVisitRecordList } from '@/apis/followUpRecords.js' |
|||
export default { |
|||
components: { |
|||
timeline, |
|||
timelineItem, |
|||
qnFooter |
|||
}, |
|||
data() { |
|||
return { |
|||
option: { |
|||
size: 10, |
|||
auto: true, |
|||
height: 0, |
|||
emptyText: '暂无数据~', |
|||
background: '#F7F8FA', |
|||
disabled: false |
|||
}, |
|||
params: { |
|||
asc: '', |
|||
desc: '', |
|||
customerEnterpriseId : [this.$store.state.supplierInfo.id], |
|||
mallSupplierId : this.$store.state.supplierInfo.supplierId || null, |
|||
// enterpriseIds : ['651107734133018624'], |
|||
// mallSupplierId : '670334117090562048', |
|||
}, |
|||
pagination: { |
|||
pageNum: 0, // 初始会执行一次下拉加载 |
|||
pageSize: 10 |
|||
}, |
|||
list: [], |
|||
} |
|||
}, |
|||
created() { |
|||
let that = this |
|||
uni.getSystemInfo({ |
|||
success: function (res) { |
|||
// console.log( '状态栏的高', res.statusBarHeight); |
|||
that.option.height = (res.windowHeight) * (750/res.windowWidth) - 120 |
|||
|
|||
} |
|||
}); |
|||
}, |
|||
onShow() { |
|||
console.log('onShow') |
|||
this.getList() |
|||
}, |
|||
methods:{ |
|||
getList() { |
|||
return new Promise((resolve, reject) => { |
|||
getVisitRecordList({ ...this.params, ...this.pagination }) |
|||
.then((res) => { |
|||
// console.log('跟踪记录', res) |
|||
if (res) { |
|||
if (this.pagination.pageNum == 1) { |
|||
this.list = res.records |
|||
} else { |
|||
this.list = this.list.concat(res.records) |
|||
} |
|||
// this.list = [] |
|||
// this.list = [...this.list, ...[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]] |
|||
resolve({ list: this.list, total: res.total }) |
|||
} else { |
|||
reject() |
|||
} |
|||
}) |
|||
.catch((err) => { |
|||
reject(err) |
|||
}) |
|||
}) |
|||
}, |
|||
addTap() { |
|||
go2('add-record') |
|||
}, |
|||
downCallback() { |
|||
this.pagination.pageNum = 1 |
|||
this.getList() |
|||
.then(({ list, total }) => { |
|||
this.$refs.list.refreshSuccess({ list, total }) |
|||
}) |
|||
.catch(() => { |
|||
this.$refs.list.refreshFail() |
|||
}) |
|||
}, |
|||
upCallback() { |
|||
this.pagination.pageNum++ |
|||
this.getList() |
|||
.then(({ list, total }) => { |
|||
this.$refs.list.loadSuccess({ list, total }) |
|||
}) |
|||
.catch(() => { |
|||
this.$refs.list.loadFail() |
|||
}) |
|||
} |
|||
} |
|||
components: { |
|||
timeline, |
|||
timelineItem, |
|||
qnFooter |
|||
}, |
|||
data() { |
|||
return { |
|||
option: { |
|||
size: 10, |
|||
auto: true, |
|||
height: 0, |
|||
emptyText: '暂无数据~', |
|||
background: '#F7F8FA', |
|||
disabled: false |
|||
}, |
|||
params: { |
|||
asc: '', |
|||
desc: '', |
|||
customerEnterpriseId: [this.$store.state.supplierInfo.id], |
|||
mallSupplierId: this.$store.state.supplierInfo.supplierId || null |
|||
// enterpriseIds : ['651107734133018624'], |
|||
// mallSupplierId : '670334117090562048', |
|||
}, |
|||
pagination: { |
|||
pageNum: 0, // 初始会执行一次下拉加载 |
|||
pageSize: 10 |
|||
}, |
|||
list: [] |
|||
} |
|||
}, |
|||
created() { |
|||
let that = this |
|||
uni.getSystemInfo({ |
|||
success: function (res) { |
|||
// console.log( '状态栏的高', res.statusBarHeight); |
|||
that.option.height = res.windowHeight * (750 / res.windowWidth) - 120 |
|||
} |
|||
}) |
|||
}, |
|||
onShow() { |
|||
console.log('onShow') |
|||
this.getList() |
|||
}, |
|||
methods: { |
|||
back, |
|||
getList() { |
|||
return new Promise((resolve, reject) => { |
|||
getVisitRecordList({ ...this.params, ...this.pagination }) |
|||
.then((res) => { |
|||
// console.log('跟踪记录', res) |
|||
if (res) { |
|||
if (this.pagination.pageNum == 1) { |
|||
this.list = res.records |
|||
} else { |
|||
this.list = this.list.concat(res.records) |
|||
} |
|||
// this.list = [] |
|||
// this.list = [...this.list, ...[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]] |
|||
resolve({ list: this.list, total: res.total }) |
|||
} else { |
|||
reject() |
|||
} |
|||
}) |
|||
.catch((err) => { |
|||
reject(err) |
|||
}) |
|||
}) |
|||
}, |
|||
addTap() { |
|||
go2('add-record') |
|||
}, |
|||
downCallback() { |
|||
this.pagination.pageNum = 1 |
|||
this.getList() |
|||
.then(({ list, total }) => { |
|||
this.$refs.list.refreshSuccess({ list, total }) |
|||
}) |
|||
.catch(() => { |
|||
this.$refs.list.refreshFail() |
|||
}) |
|||
}, |
|||
upCallback() { |
|||
this.pagination.pageNum++ |
|||
this.getList() |
|||
.then(({ list, total }) => { |
|||
this.$refs.list.loadSuccess({ list, total }) |
|||
}) |
|||
.catch(() => { |
|||
this.$refs.list.loadFail() |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss"> |
|||
.warpper { |
|||
background-color: #FFFFFF; |
|||
.time { |
|||
font-size: 26rpx; |
|||
color: #000000; |
|||
letter-spacing: 0; |
|||
font-weight: 400; |
|||
} |
|||
.tripItem { |
|||
margin-top: 20rpx; |
|||
// height: 140rpx; |
|||
padding: 20rpx 30rpx; |
|||
// height: 376rpx; |
|||
background: #F7F8FA; |
|||
border-radius: 8rpx; |
|||
.row { |
|||
display: flex; |
|||
flex-direction: row; |
|||
padding: 16rpx 0rpx; |
|||
.title { |
|||
flex: 0 0 140rpx; |
|||
font-size: 28rpx; |
|||
color: #888888; |
|||
letter-spacing: 0; |
|||
font-weight: 400; |
|||
} |
|||
.value { |
|||
display: flex; |
|||
align-items: center; |
|||
flex: 1; |
|||
font-size: 28rpx; |
|||
color: #333333; |
|||
letter-spacing: 0; |
|||
font-weight: 400; |
|||
line-height: 1.3; |
|||
} |
|||
.icon { |
|||
width: 32rpx; |
|||
height: 32rpx; |
|||
} |
|||
.location{ |
|||
font-size: 26rpx; |
|||
color: #888888; |
|||
letter-spacing: 0; |
|||
text-align: left; |
|||
line-height: 32rpx; |
|||
font-weight: 400; |
|||
padding-left: 10rpx; |
|||
} |
|||
} |
|||
} |
|||
.see-more { |
|||
display: flex; |
|||
flex-direction: row; |
|||
align-items: center; |
|||
justify-content: center; |
|||
padding-top: 20rpx; |
|||
background: #ffffff; |
|||
// border-top: 2rpx solid #dddddd; |
|||
// padding: 0rpx 32rpx; |
|||
font-size: 28rpx; |
|||
color: #007aff; |
|||
letter-spacing: 0; |
|||
text-align: center; |
|||
font-weight: 400; |
|||
.icon { |
|||
width: 24rpx; |
|||
height: 24rpx; |
|||
} |
|||
} |
|||
.button-area { |
|||
width: 750rpx; |
|||
padding: 0 32rpx; |
|||
display: flex; |
|||
flex-direction: row; |
|||
align-items: center; |
|||
// justify-content: space-between; |
|||
.button { |
|||
flex-grow: 0; |
|||
flex-shrink: 0; |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: center; |
|||
border-radius: 10rpx; |
|||
.text { |
|||
font-size: 30rpx; |
|||
font-weight: 500; |
|||
text-align: center; |
|||
} |
|||
} |
|||
.button__cancel { |
|||
width: 270rpx; |
|||
height: 88rpx; |
|||
border: 2rpx solid #979797; |
|||
} |
|||
.button__submit { |
|||
width: 100%; |
|||
height: 88rpx; |
|||
background: #007aff; |
|||
} |
|||
} |
|||
.wrapper { |
|||
background-color: #ffffff; |
|||
.time { |
|||
font-size: 26rpx; |
|||
color: #000000; |
|||
letter-spacing: 0; |
|||
font-weight: 400; |
|||
} |
|||
.tripItem { |
|||
margin-top: 20rpx; |
|||
// height: 140rpx; |
|||
padding: 20rpx 30rpx; |
|||
// height: 376rpx; |
|||
background: #f7f8fa; |
|||
border-radius: 8rpx; |
|||
.row { |
|||
display: flex; |
|||
flex-direction: row; |
|||
padding: 16rpx 0rpx; |
|||
.title { |
|||
flex: 0 0 140rpx; |
|||
font-size: 28rpx; |
|||
color: #888888; |
|||
letter-spacing: 0; |
|||
font-weight: 400; |
|||
} |
|||
.value { |
|||
display: flex; |
|||
align-items: center; |
|||
flex: 1; |
|||
font-size: 28rpx; |
|||
color: #333333; |
|||
letter-spacing: 0; |
|||
font-weight: 400; |
|||
line-height: 1.3; |
|||
} |
|||
.icon { |
|||
width: 32rpx; |
|||
height: 32rpx; |
|||
} |
|||
.location { |
|||
font-size: 26rpx; |
|||
color: #888888; |
|||
letter-spacing: 0; |
|||
text-align: left; |
|||
line-height: 32rpx; |
|||
font-weight: 400; |
|||
padding-left: 10rpx; |
|||
} |
|||
} |
|||
} |
|||
.see-more { |
|||
display: flex; |
|||
flex-direction: row; |
|||
align-items: center; |
|||
justify-content: center; |
|||
padding-top: 20rpx; |
|||
background: #ffffff; |
|||
// border-top: 2rpx solid #dddddd; |
|||
// padding: 0rpx 32rpx; |
|||
font-size: 28rpx; |
|||
color: #007aff; |
|||
letter-spacing: 0; |
|||
text-align: center; |
|||
font-weight: 400; |
|||
.icon { |
|||
width: 24rpx; |
|||
height: 24rpx; |
|||
} |
|||
} |
|||
.button-area { |
|||
width: 750rpx; |
|||
padding: 0 32rpx; |
|||
display: flex; |
|||
flex-direction: row; |
|||
align-items: center; |
|||
// justify-content: space-between; |
|||
.button { |
|||
flex-grow: 0; |
|||
flex-shrink: 0; |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: center; |
|||
border-radius: 10rpx; |
|||
.text { |
|||
font-size: 30rpx; |
|||
font-weight: 500; |
|||
text-align: center; |
|||
} |
|||
} |
|||
.button__cancel { |
|||
width: 270rpx; |
|||
height: 88rpx; |
|||
border: 2rpx solid #979797; |
|||
} |
|||
.button__submit { |
|||
width: 100%; |
|||
height: 88rpx; |
|||
background: #007aff; |
|||
} |
|||
} |
|||
} |
|||
</style> |
|||
</style> |
|||
Write
Preview
Loading…
Cancel
Save