杨阁辉 4 years ago
parent
commit
3252bc0211
4 changed files with 170 additions and 53 deletions
  1. 9
      apis/clientDetailApi.js
  2. 39
      pages/client-detail/base-paper-deals.vue
  3. 70
      pages/client-detail/basic-information.vue
  4. 105
      pages/client-detail/equipment-information.vue

9
apis/clientDetailApi.js

@ -32,4 +32,13 @@ export function getBasePaperDeals(data) {
hideLoading: true
}
)
}
// 原纸交易顶部统计数据
export function getOrderVolumeStatistics(data) {
return http.get(
{
url: '/base-paper-trading/get/supplier/order-volume-statistics',
data
}
)
}

39
pages/client-detail/base-paper-deals.vue

@ -4,11 +4,11 @@
<view class="sum-box">
<view class="">
<view class="title">交易金额</view>
<view class="value">458 682.00</view>
<view class="value">{{topInfo.tradingVolume}}</view>
</view>
<view class="">
<view class="title">总交易量()</view>
<view class="value">125.7752</view>
<view class="value">{{topInfo.volumeOfBusiness}}</view>
</view>
</view>
<uGap></uGap>
@ -17,11 +17,12 @@
<view class="left-title">{{item.customerEnterpriseName}}</view>
<view class="right-title">¥ {{item.totalOfferPrice}}</view>
</view>
<view class="content" v-for="(subItem, subIndex) in item.supplierOrderList" :key="subIndex">
<image class="image" src="https://qncloud.oss-cn-shenzhen.aliyuncs.com/ztb_pic/testPic.jfif" mode=""></image>
<view class="content" v-for="(subItem, subIndex) in item.supplierOrderList[0].orderItmes" :key="subIndex">
<!-- <image class="image" :src="https://qncloud.oss-cn-shenzhen.aliyuncs.com/ztb_pic/testPic.jfif" mode=""></image> -->
<image class="image" :src="subItem.productImg" mode=""></image>
<view class="">
<view class="title">金蝶蓝白卡</view>
<view class="desc">白卡纸/金蝶蓝/350g/787*1092/2200</view>
<view class="title">{{subItem.productName}}</view>
<view class="desc">{{subItem.brandName}}/{{subItem.categoryName}}/{{subItem.gramWeight}}g/{{subItem.length}}*{{subItem.width}}/{{subItem.pieceQuantity}}</view>
</view>
</view>
<!-- <view class="content">
@ -32,7 +33,7 @@
</view>
</view> -->
<view class="other">
<view class="time">2021-12-23 12:30:45</view>
<view class="time">{{item.createTime}}</view>
<view class="btn">
更多详情
<image class="icon" src="/static/imgs/client-detail/arrow-right-icon.png"></image>
@ -46,7 +47,7 @@
<script>
import uGap from '@/components/u-gap/u-gap.vue'
import { getBasePaperDeals } from '@/apis/clientDetailApi.js'
import { getBasePaperDeals, getOrderVolumeStatistics } from '@/apis/clientDetailApi.js'
export default {
components: { uGap },
@ -73,15 +74,33 @@ export default {
pageNum: 0, //
pageSize: 10
},
list: []
orderParams: {
beginDate: '',
currentSupplier: '670334117090562048',
// currentSupplier: this.$store.state.supplierInfo.supplierId || null,
endDate: '',
},
list: [],
topInfo: {},
}
},
onLoad() {
},
methods: {
//
getOrderVolumeStatistics() {
getOrderVolumeStatistics(this.orderParams).then(res =>{
// console.log('', res)
this.topInfo = res
})
},
getList() {
this.getOrderVolumeStatistics()
return new Promise((resolve, reject) => {
getBasePaperDeals({ ...this.params, ...this.pagination })
.then(res => {
console.log('原纸交易', res)
// console.log('', res)
if (res) {
if (this.pagination.pageNum == 1) {
this.list = res.records

70
pages/client-detail/basic-information.vue

@ -107,8 +107,11 @@
<uGap></uGap>
<view class="card-box">
<view class="card-header"><view class="left-text">法律诉讼</view></view>
<view class="card-content" style="margin: 20rpx 0rpx;">
<view class="fl-info" v-for="(item, index) in 2" :key="index">
<view class="card-content" style="margin: 20rpx 0rpx;">
<view class="no-data">
暂无法律诉讼
</view>
<!-- <view class="fl-info" v-for="(item, index) in 2" :key="index">
<view class="row">
<view class="title">
<view class="left">
@ -129,9 +132,9 @@
<view><text>2019/12/09</text></view>
</view>
</view>
</view>
</view> -->
</view>
<view class="see-more">
<view class="see-more" v-if="false">
<view class="" @tap="seemoreTap">
<text>查看更多</text>
<image class="icon" :src="!seemoreFlag ? '/static/imgs/client-detail/arrow-up-icon.png' : '/static/imgs/client-detail/arrow-down-icon.png'"></image>
@ -141,8 +144,11 @@
<uGap></uGap>
<view class="card-box">
<view class="card-header"><view class="left-text">经营异常</view></view>
<view class="card-content" style="margin: 20rpx 0rpx;">
<view class="fl-info" v-for="(item, index) in 2" :key="index">
<view class="card-content" style="margin: 20rpx 0rpx;">
<view class="no-data">
暂无经营异常
</view>
<!-- <view class="fl-info" v-for="(item, index) in 2" :key="index">
<view class="row">
<view class="title">
<view class="left">
@ -168,14 +174,17 @@
<view><text>243.95万人民币</text></view>
</view>
</view>
</view>
</view> -->
</view>
</view>
<uGap></uGap>
<view class="card-box">
<view class="card-header"><view class="left-text">征信信息</view></view>
<view class="card-content" style="margin: 20rpx 0rpx;">
<view class="fl-info" v-for="(item, index) in 2" :key="index">
<view class="card-content" style="margin: 20rpx 0rpx;">
<view class="no-data">
暂无征信信息
</view>
<!-- <view class="fl-info" v-for="(item, index) in 2" :key="index">
<view class="row">
<view class="other">
<view class="left-text"><text>立案日期</text></view>
@ -194,7 +203,7 @@
<view><text>太原市杏花岭区人民法院</text></view>
</view>
</view>
</view>
</view> -->
</view>
</view>
</scroll-list>
@ -223,40 +232,14 @@ export default {
background: '#F7F8FA',
disabled: true
},
info: {
annualTurnover: 0,
belongIndustry: 'string',
businessLicenseImg: 'string',
factoryAddress: 'string',
factoryImgList: ['string'],
foundDate: '2022-01-05T02:20:30.776Z',
id: 0,
leaseContract: 'string',
legalPersonName: 'string',
locCityId: 0,
locCityName: 'string',
locDetail: 'string',
locDistriceName: 'string',
locDistrictId: 0,
locProvinceId: 0,
locProvinceName: 'string',
locStreetId: 0,
locStreetName: 'string',
mainBusiness: 'string',
name: 'string',
plantArea: 0,
registeredCapital: 0,
registrationStatus: 'string',
shortName: 'string',
uniformSocialCreditCode: 'string'
},
info: {},
seemoreFlag: true
}
},
methods: {
getBaseInfo() {
getBaseInfo({customerId: this.customerId }).then(res => {
console.log('基础信息', res)
// console.log('', res)
this.info = res
})
},
@ -549,6 +532,17 @@ export default {
color: #007aff;
letter-spacing: 0;
font-weight: 400;
}
.no-data {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
height: 160rpx;
font-size: 28rpx;
color: #888888;
letter-spacing: 0;
font-weight: 400;
}
}
</style>

105
pages/client-detail/equipment-information.vue

@ -4,7 +4,17 @@
<view class="card-box" v-for="(item, index) in list" :key="index">
<view class="header">
<view class="title">{{item.name}}</view>
<view class="desc">近30天</view>
<view class="desc">
<view class="bottom-btn" @tap="dropdownTap(index)">
{{dropdownName}}
<uni-icons size="16" type="bottom"></uni-icons>
</view>
<view class="down-box" v-if="item.isShowSelect">
<view class="row" v-for="(citem, cindex) in dropdownList" :key="cindex" @tap="dropdownItemTap(cindex)">
<text :class="params.duration == cindex ? 'activeText' : ''">{{citem}}</text>
</view>
</view>
</view>
</view>
<view class="content">
<view class="info">
@ -30,7 +40,7 @@
</view>
</view>
</view>
<view class="shrink-box" v-if="seemoreFlag == index">
<view class="shrink-box" v-if="item.collapse">
<view class="row">
<view class="left">
<view class="title">设备图片</view>
@ -86,7 +96,7 @@
<view class="see-more">
<view class="" @tap="seemoreTap(index)">
<text>设备详情</text>
<image class="icon" :src="!seemoreFlag ? '/static/imgs/client-detail/arrow-up-icon.png' : '/static/imgs/client-detail/arrow-down-icon.png'"></image>
<image class="icon" :src="item.collapse ? '/static/imgs/client-detail/arrow-up-icon.png' : '/static/imgs/client-detail/arrow-down-icon.png'"></image>
</view>
</view>
<uGap></uGap>
@ -103,6 +113,8 @@ export default {
components: { lvSelect, uGap },
data() {
return {
isShowSelect: false,
dropdownList: ['近30天','近7天', '今日','全部'], // 0:30 17 2 3
option: {
size: 10,
auto: true,
@ -127,6 +139,28 @@ export default {
onLoad() {
// this.getList()
},
computed:{
dropdownName() {
let text = '全部'
switch (this.params.duration){
case 0:
text = '近30天'
break;
case 1:
text = '近7天'
break;
case 2:
text = '今日'
break;
case 3:
text = '全部'
break;
default:
break;
}
return text
}
},
methods: {
previewImg(img, list) {
uni.previewImage({
@ -138,7 +172,11 @@ export default {
return new Promise((resolve, reject) => {
getDeviceInfo({ ...this.params, ...this.pagination })
.then(res => {
console.log('设备信息', res)
res.records.forEach(el => {
el.collapse = false
el.isShowSelect = false
})
// console.log('', res.records)
if (res) {
if (this.pagination.pageNum == 1) {
this.list = res.records
@ -156,7 +194,19 @@ export default {
})
},
seemoreTap(index) {
this.seemoreFlag = index
this.list[index].collapse = !this.list[index].collapse
},
dropdownTap(index) {
this.list[index].isShowSelect = !this.list[index].isShowSelect
this.list.forEach((el, i) => {
if(i !== index) {
this.list[i].isShowSelect = false
}
})
},
dropdownItemTap(index) {
this.params.duration = index
this.downCallback()
},
downCallback() {
this.pagination.pageNum = 1
@ -205,6 +255,51 @@ export default {
letter-spacing: 0;
text-align: right;
font-weight: 400;
.bottom-btn {
position: relative;
z-index: 8;
}
.down-box {
position: absolute;
margin-top: 14rpx;
text-align: center;
right: 15rpx;
z-index: 10;
width: 204rpx;
height: 218.9rpx;
background: #FFFFFF;
border-radius: 6rpx;
padding: 0rpx 30rpx;
.row {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
height: 54rpx;
font-size: 22rpx;
color: #323233;
text-align: center;
font-weight: 400;
border-bottom: 1.6rpx solid #EBEDF0;
}
.activeText {
color: #007AFF;
}
}
.down-box::before{
content: '';
position: absolute;
width: 0;
height: 0;
border-bottom: solid 12rpx #ffffff;
border-right: solid 12rpx transparent;
border-left: solid 12rpx transparent;
left: 80%;
top: -12rpx;
margin-left: -12rpx;
}
}
}
.content {

Loading…
Cancel
Save