crm
This commit is contained in:
parent
5b0bbd53c6
commit
ad21ea3496
@ -1,4 +1,5 @@
|
||||
<template>
|
||||
<uv-sticky>
|
||||
<uv-navbar :fixed="false" @leftClick="$onClickLeft" bgColor="#09b4f1">
|
||||
<template v-slot:left>
|
||||
<uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon>
|
||||
@ -7,12 +8,13 @@
|
||||
<text style="color:#ffffff">{{title}}</text>
|
||||
</template>
|
||||
</uv-navbar>
|
||||
<view class="container">
|
||||
<view class="pb-2 flex px-5" style="background-color: #09b4f1;">
|
||||
<uv-search placeholder="搜索线索名称" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle"
|
||||
:show-action="false" @change="onSearch"></uv-search>
|
||||
<uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon>
|
||||
</view>
|
||||
</uv-sticky>
|
||||
<view class="container">
|
||||
<view class="bg-white">
|
||||
<uv-tabs :list="list" @click="handleSelect" :scrollable="false"></uv-tabs>
|
||||
</view>
|
||||
@ -328,7 +330,7 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
<style lang="scss" scoped>
|
||||
.container {
|
||||
background-color: #F7F7F7;
|
||||
}
|
||||
|
@ -1,4 +1,5 @@
|
||||
<template>
|
||||
<uv-sticky>
|
||||
<uv-navbar :fixed="false" @leftClick="$onClickLeft" bgColor="#09b4f1">
|
||||
<template v-slot:left>
|
||||
<uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon>
|
||||
@ -7,12 +8,13 @@
|
||||
<text style="color:#ffffff">{{title}}</text>
|
||||
</template>
|
||||
</uv-navbar>
|
||||
<view class="container">
|
||||
<view class="pb-2 flex px-5" style="background-color: #09b4f1;">
|
||||
<uv-search placeholder="搜索联系人姓名" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle"
|
||||
:show-action="false" @change="onSearch"></uv-search>
|
||||
<uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon>
|
||||
</view>
|
||||
</uv-sticky>
|
||||
<view class="container">
|
||||
<view class="bg-white">
|
||||
<uv-tabs :list="list" @click="handleSelect" :scrollable="false"></uv-tabs>
|
||||
</view>
|
||||
|
@ -1,4 +1,5 @@
|
||||
<template>
|
||||
<uv-sticky>
|
||||
<uv-navbar :fixed="false" @leftClick="$onClickLeft" bgColor="#09b4f1">
|
||||
<template v-slot:left>
|
||||
<uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon>
|
||||
@ -7,12 +8,12 @@
|
||||
<text style="color:#ffffff">{{title}}</text>
|
||||
</template>
|
||||
</uv-navbar>
|
||||
<view class="container">
|
||||
<view class="pb-2 flex px-5" style="background-color: #09b4f1;">
|
||||
<uv-search placeholder="搜索合同名称" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle"
|
||||
:show-action="false" @change="onSearch"></uv-search>
|
||||
<!-- <uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon> -->
|
||||
</view>
|
||||
</uv-sticky>
|
||||
<view class="container">
|
||||
<view class="wrap">
|
||||
<uv-tabs :list="list" @click="handleSelect" :scrollable="false"></uv-tabs>
|
||||
<scroll-view scroll-y class="sv" :style="{height:scrollHeight+'px'}" :scroll-top="scrollTop" @scroll="scroll"
|
||||
|
@ -1,4 +1,5 @@
|
||||
<template>
|
||||
<uv-sticky>
|
||||
<uv-navbar :fixed="false" @leftClick="$onClickLeft" bgColor="#09b4f1">
|
||||
<template v-slot:left>
|
||||
<uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon>
|
||||
@ -7,12 +8,13 @@
|
||||
<text style="color:#ffffff">{{title}}</text>
|
||||
</template>
|
||||
</uv-navbar>
|
||||
<view class="container">
|
||||
<view class="pb-2 flex px-5" style="background-color: #09b4f1;">
|
||||
<uv-search placeholder="搜索客户名称" v-model="keyword" bgColor="#ffffff" :customStyle="customStyle"
|
||||
:show-action="false" @change="onSearch"></uv-search>
|
||||
<uv-icon name="/static/images/screen.png" :size="26" @click="openSearch"></uv-icon>
|
||||
</view>
|
||||
</uv-sticky>
|
||||
<view class="container">
|
||||
<view class="wrap">
|
||||
<scroll-view scroll-y class="sv" :style="{height:scrollHeight+'px'}" :scroll-top="scrollTop" lower-threshold="20"
|
||||
@scroll="scroll" @scrolltolower="reachBottom">
|
||||
|
@ -1,9 +1,6 @@
|
||||
<template>
|
||||
<uv-navbar
|
||||
:fixed="false"
|
||||
@leftClick="$onClickLeft"
|
||||
bgColor="#09b4f1"
|
||||
>
|
||||
<uv-sticky>
|
||||
<uv-navbar :fixed="false" @leftClick="$onClickLeft" bgColor="#09b4f1">
|
||||
<template v-slot:left>
|
||||
<uv-icon name="arrow-left" size="19" color="#ffffff"></uv-icon>
|
||||
</template>
|
||||
@ -11,12 +8,14 @@
|
||||
<text style="color:#ffffff">{{title}}</text>
|
||||
</template>
|
||||
</uv-navbar>
|
||||
<view class="container" >
|
||||
<view class="bg-white">
|
||||
<uv-tabs :list="list" @click="handleSelect" :scrollable="false"></uv-tabs>
|
||||
</view>
|
||||
</uv-sticky>
|
||||
<view class="container">
|
||||
<view class="wrap">
|
||||
<scroll-view scroll-y class="sv" :style="{height:scrollHeight+'px'}" :scroll-top="scrollTop" lower-threshold="20" @scroll="scroll" @scrolltolower="reachBottom">
|
||||
<scroll-view scroll-y class="sv" :style="{height:scrollHeight+'px'}" :scroll-top="scrollTop" lower-threshold="20"
|
||||
@scroll="scroll" @scrolltolower="reachBottom">
|
||||
<view class="page-box" @touchmove="handletouchstart" @touchend="handletouchend">
|
||||
<block v-if="dataList.length > 0">
|
||||
<view class="client" v-for="(items, index) in dataList" :key="index">
|
||||
@ -24,7 +23,8 @@
|
||||
<view class="left">
|
||||
<view class="store uv-line-1">
|
||||
<uv-text v-if="items.types == 'customer'" type="success" :text="'关联客户:'+items.typesName"></uv-text>
|
||||
<uv-text v-else-if="items.types == 'clues'" type="warning" :text="'关联线索:'+items.typesName"></uv-text>
|
||||
<uv-text v-else-if="items.types == 'clues'" type="warning"
|
||||
:text="'关联线索:'+items.typesName"></uv-text>
|
||||
<uv-text v-else type="error" :text="'关联商机:'+items.typesName"></uv-text>
|
||||
</view>
|
||||
</view>
|
||||
@ -54,11 +54,17 @@ import {
|
||||
ref,
|
||||
computed
|
||||
} from 'vue'
|
||||
import { onLoad,onShow ,onReady} from '@dcloudio/uni-app'
|
||||
import {
|
||||
onLoad,
|
||||
onShow,
|
||||
onReady
|
||||
} from '@dcloudio/uni-app'
|
||||
import {
|
||||
getRecordPage
|
||||
} from '@/api/customer'
|
||||
import { formatDateTime } from '@/utils/util'
|
||||
import {
|
||||
formatDateTime
|
||||
} from '@/utils/util'
|
||||
const title = ref('跟进记录')
|
||||
const keyword = ref('')
|
||||
const mobile = ref('')
|
||||
@ -97,7 +103,19 @@ const actions = ref(
|
||||
}]
|
||||
)
|
||||
|
||||
defineExpose({isRefresh})
|
||||
const handleSelect = (key) => {
|
||||
if (key.value !== relation.value) {
|
||||
page.value = 1
|
||||
lastPage.value = false
|
||||
scrollTop.value = 0
|
||||
dataList.value = []
|
||||
getRecordList()
|
||||
}
|
||||
}
|
||||
|
||||
defineExpose({
|
||||
isRefresh
|
||||
})
|
||||
|
||||
const customStyle = computed(() => {
|
||||
return {
|
||||
@ -200,18 +218,17 @@ const reachBottom = () => {
|
||||
}, 500)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.container {
|
||||
background-color: #F7F7F7;
|
||||
}
|
||||
|
||||
.page-box {
|
||||
padding: 20rpx 20rpx 45rpx;
|
||||
}
|
||||
|
||||
.client {
|
||||
width: 710rpx;
|
||||
background-color: #ffffff;
|
||||
@ -220,12 +237,15 @@ const reachBottom = () => {
|
||||
box-sizing: border-box;
|
||||
padding: 20rpx;
|
||||
font-size: 28rpx;
|
||||
|
||||
.top {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.left {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.store {
|
||||
max-width: 400rpx;
|
||||
font-size: 30rpx;
|
||||
@ -233,11 +253,13 @@ const reachBottom = () => {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.tap {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
margin: 20rpx 0 0;
|
||||
|
||||
.tap-item {
|
||||
background-color: #FF6146;
|
||||
color: #fff;
|
||||
@ -248,43 +270,53 @@ const reachBottom = () => {
|
||||
margin-bottom: 10rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.item {
|
||||
display: flex;
|
||||
margin: 20rpx 0 0;
|
||||
|
||||
.content {
|
||||
flex: 1;
|
||||
|
||||
.title {
|
||||
font-size: 28rpx;
|
||||
line-height: 50rpx;
|
||||
}
|
||||
|
||||
.type {
|
||||
margin: 10rpx 0;
|
||||
font-size: 24rpx;
|
||||
color: $uv-tips-color;
|
||||
}
|
||||
}
|
||||
|
||||
.right {
|
||||
margin-left: 10rpx;
|
||||
text-align: right;
|
||||
|
||||
.decimal {
|
||||
font-size: 24rpx;
|
||||
margin-top: 4rpx;
|
||||
}
|
||||
|
||||
.number {
|
||||
color: $uv-tips-color;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
margin-top: 20rpx;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
|
||||
.client_time {
|
||||
color: #777;
|
||||
font-size: 26rpx;
|
||||
}
|
||||
|
||||
.btn {
|
||||
line-height: 60rpx;
|
||||
width: 160rpx;
|
||||
@ -293,17 +325,17 @@ const reachBottom = () => {
|
||||
text-align: center;
|
||||
color: $uv-primary-dark;
|
||||
}
|
||||
|
||||
.entity {
|
||||
color: #fff;
|
||||
background-color: #09b4f1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.wrap {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
@ -320,7 +320,9 @@
|
||||
}
|
||||
|
||||
const getData = async () => {
|
||||
let data = await indexCount()
|
||||
let data = await indexCount({
|
||||
relation: 'all'
|
||||
})
|
||||
let brieCount = data.brieCountVO
|
||||
toolIcons3.value[0].count = brieCount.count01
|
||||
toolIcons3.value[1].count = brieCount.count02
|
||||
@ -345,8 +347,6 @@
|
||||
text: count + ''
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -364,7 +364,6 @@
|
||||
uni.switchTab({
|
||||
url
|
||||
})
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user