<template>
|
<view>
|
<view class="status_bar">
|
<!-- 这里是状态栏 -->
|
</view>
|
<uni-nav-bar left-icon="left" title="跟踪项目" @clickLeft="back" @clickRight="scan" :fixed="true"
|
:border="false" rightWidth="160rpx" leftWidth="160rpx"
|
>
|
<block slot="right">
|
<view class="city">
|
<view>
|
<text class="uni-nav-bar-text">{{user.username}}</text>
|
</view>
|
<uni-icons type="arrowdown" color="#333333" size="20" />
|
</view>
|
</block>
|
</uni-nav-bar>
|
<!-- 搜索框 -->
|
<view class="search-bg">
|
<u-search placeholder="输入" v-model="keyword" :clearabled="true" @custom="search()" @search="search()"></u-search>
|
</view>
|
<view>
|
<!-- 客户列表 -->
|
<view class="c-list" v-for="(item,index) in csmtrList" :key="index">
|
<view class="titles" @click="getDetails(item.id)">
|
<view style="flex: 1;">
|
<y-title :title="item.name"></y-title>
|
</view>
|
<uni-icons class="opt-icon" type="right" size="20" color="#b9b9b9"></uni-icons>
|
</view>
|
<view class="cstmrs">
|
<view class="cstmrs-item">
|
<view class="list-item1">项目号</view><view class="list-item2">{{item.id}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">跟踪项目名称</view><view class="list-item2">{{item.name}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">项目代号</view><view class="list-item2">{{item.uuid}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">甲方单位</view><view class="list-item2 color-main" @click="goDetls(item.cstmrId)">{{item.cstmrId$ ? item.cstmrId$ : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">所属区域</view><view class="list-item2">{{item.pcd$ ? item.pcd$ : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">项目地址</view><view class="list-item2">{{item.addr ? item.addr : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">项目预算金额(万)</view><view class="list-item2">{{item.money ? item.money : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">项目预估成交率</view><view class="list-item2">{{item.transactionRate ? item.transactionRate : '--'}}%</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">项目负责人</view><view class="list-item2">{{item.userId$ ? item.userId$ : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">备注</view><view class="list-item2">{{item.memo ? item.memo : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">添加时间</view><view class="list-item2">{{item.createTime$ ? item.createTime$ : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">所属公司</view><view class="list-item2">{{item.company$ ? item.company$ : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">产品类型</view><view class="list-item2">{{item.orderProductTypeId$ ? item.orderProductTypeId$ : '--'}}</view>
|
</view>
|
<view class="cstmrs-item">
|
<view class="list-item1">状态</view><view class="list-item2">{{item.status$ ? item.status$ : '--'}}</view>
|
</view>
|
</view>
|
</view>
|
</view>
|
<!-- <uni-load-more :status="status" :icon-size="16" :content-text="contentText" /> -->
|
<u-empty v-if="true" icon="../../../static/image/emptyList.png" v-show="csmtrList.length <= 0" />
|
<view style="height: 10rpx;"></view>
|
<view class="fxbtn">
|
<uni-icons type="plusempty" color="#fff" @click="add()" ></uni-icons>
|
</view>
|
</view>
|
</template>
|
|
<script>
|
import user from '@/pages/api/user/user.js'
|
export default {
|
data() {
|
return {
|
keyword: '',
|
user: {
|
username: '',
|
id: 0,
|
type: ''
|
},
|
falg: true,
|
csmtrList: [],
|
last_id: '',
|
reload: false,
|
status: 'more',
|
curr:2,
|
contentText: {
|
contentdown: '上拉加载更多',
|
contentrefresh: '加载中',
|
contentnomore: '没有更多'
|
},
|
|
}
|
},
|
onLoad() {
|
|
},
|
onShow() {
|
let that = this
|
uni.$on('isRefresh',function(data){
|
that.user.username = data.title
|
that.user.id = data.id
|
that.user.type = data.key
|
that.falg = false
|
})
|
if (this.falg) {
|
this.getDetail()
|
}
|
setTimeout(()=> {
|
this.getCsmtr1()
|
},50)
|
},
|
onReachBottom() {
|
this.status = 'more';
|
this.getCsmtr()
|
},
|
methods: {
|
async getDetail() {
|
let res = await user.getDetail()
|
if (res.code === 200) {
|
this.user.username = res.data.username
|
this.user.id = res.data.id
|
} else if (res.code === 403) {
|
this.backLogin(res)
|
}
|
},
|
add() {
|
uni.navigateTo({
|
url:'/pages/business/saleManage/addSaleManage',
|
})
|
},
|
getCsmtr1(e) {
|
let that = this
|
that.csmtrList = []
|
uni.showLoading({})
|
let param = {curr:1,limit:4,dept_id: 0,user_id: 67}
|
if (this.user.type == 'user_id') {
|
param = {curr:1,limit:4,user_id: that.user.id}
|
} else if(this.user.type == 'dept_id') {
|
param = {curr:1,limit:4,dept_id: that.user.id}
|
} else {
|
param = {curr:1,limit:4}
|
}
|
uni.request({
|
url: that.baseUrl + '/order/page/auth',
|
header: {'token' : uni.getStorageSync('token'),},
|
data: param,
|
method:'GET',
|
success(result) {
|
if (result.statusCode === 404) {
|
uni.showToast({title: '请重新登录', icon: "none", position: 'top'})
|
return
|
}
|
var res = result.data
|
if (res.code === 200) {
|
let list = res.data.records
|
that.csmtrList = that.reload ? list : that.csmtrList.concat(list);
|
if (res.data.records.length == 0) {
|
that.status = 'noMore'
|
}
|
} else if (res.code === 403) {
|
uni.showToast({title: res.msg, icon: "none", position: 'top'})
|
setTimeout(() => {
|
uni.reLaunch({
|
url: '../../login/login'
|
});
|
}, 1000);
|
} else {
|
uni.showToast({title: res.msg, icon: "none",position: 'top'})
|
}
|
},
|
fail(result) {
|
uni.showToast({title: '请求失败'})
|
setTimeout(() => {
|
uni.reLaunch({
|
url: '../../login/login'
|
});
|
}, 1000);
|
},
|
complete() {
|
uni.hideLoading()
|
}
|
})
|
},
|
getCsmtr() {
|
let that = this
|
uni.showLoading({})
|
let param = {curr:that.curr,limit:4,dept_id: 0,user_id: 67}
|
if (this.user.type == 'user_id') {
|
param = {curr:that.curr,limit:4,user_id: that.user.id}
|
} else if(this.user.type == 'dept_id') {
|
param = {curr:that.curr,limit:4,dept_id: that.user.id}
|
} else {
|
param = {curr:that.curr,limit:4}
|
}
|
uni.request({
|
url: that.baseUrl + '/order/page/auth',
|
header: {'token' : uni.getStorageSync('token'),},
|
data: param,
|
method:'GET',
|
success(result) {
|
if (result.statusCode === 404) {
|
uni.showToast({title: '请重新登录', icon: "none", position: 'top'})
|
return
|
}
|
var res = result.data
|
if (res.code === 200) {
|
let list = res.data.records
|
that.csmtrList = that.reload ? list : that.csmtrList.concat(list);
|
that.curr = that.curr + 1
|
if (res.data.records.length == 0) {
|
that.status = 'noMore'
|
}
|
} else if (res.code === 403) {
|
uni.showToast({title: res.msg, icon: "none", position: 'top'})
|
setTimeout(() => {
|
uni.reLaunch({
|
url: '../../login/login'
|
});
|
}, 1000);
|
} else {
|
uni.showToast({title: res.msg, icon: "none",position: 'top'})
|
}
|
},
|
fail(result) {
|
uni.showToast({title: '请求失败'})
|
setTimeout(() => {
|
uni.reLaunch({
|
url: '../../login/login'
|
});
|
}, 1000);
|
},
|
complete() {
|
uni.hideLoading()
|
}
|
})
|
},
|
getDetails(id) {
|
uni.navigateTo({
|
url: '/pages/business/saleManage/saleManageDetails?id=' + id
|
})
|
},
|
goDetls(id) {
|
uni.navigateTo({
|
url: '/pages/business/saleManage/cstmrDetls?id=' + id
|
})
|
},
|
// ---
|
search() {
|
|
},
|
back() {
|
uni.navigateBack({
|
})
|
},
|
scan() {
|
uni.navigateTo({
|
url: '/pages/authority/authority'
|
})
|
},
|
}
|
}
|
</script>
|
|
<style>
|
.c-list {
|
width: 96%;
|
min-height: 100rpx;
|
background-color: #fff;
|
border-radius: 10rpx;
|
margin: 20rpx 2% 0 2%;
|
display: flex;
|
flex-direction: column;
|
font-size: 24rpx;
|
}
|
/* 父view 换 scroll-view */
|
.c-list:last-child {
|
margin-bottom: 20px;
|
}
|
.list-item1 {
|
flex: 1;
|
min-height: 45rpx;
|
line-height: 45rpx;
|
color: #909399;
|
text-indent: 30rpx;
|
}
|
.list-item2 {
|
flex: 3;
|
min-height: 45rpx;
|
line-height: 45rpx;
|
color: black;
|
}
|
.titles {
|
padding-left: 10rpx;
|
text-indent: 5rpx;
|
margin-top: 10rpx;
|
display: flex;
|
}
|
.cstmrs {
|
display: flex;
|
flex-direction: column;
|
justify-content: center;
|
}
|
.cstmrs-item {
|
display: flex;
|
}
|
.color-main {
|
color: #55aaff
|
}
|
/* .title {
|
height: 60rpx;
|
line-height: 70rpx;
|
font-size: 28rpx;
|
font-weight: 900;
|
color: #303133;
|
} */
|
</style>
|