<template>
|
<view class="main-container home relative">
|
<!-- <image class="component-bg"
|
src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/21/21c95c14e9504be69edff7785e3b44a9bg.png" mode="scaleToFill" />
|
-->
|
<!-- <view>
|
我的
|
</view> -->
|
<!-- 背景图 -->
|
<view class="top-bg" :style="{'padding-top':(StatusBar)+'px','line-height':CustomBar+'rpx' }">
|
<view class="title" style="position: relative;">
|
首页
|
|
</view>
|
<view class="flex user-info" v-if="currentInfo&&(currentInfo.id)">
|
<!-- 头像 -->
|
<image class="user-icon" v-if="!currentInfo.picture"
|
src='https://youzhen123.oss-cn-huhehaote.aliyuncs.com/WechatOwnerProperty/images/mrtx.png'
|
mode="aspectFit"></image>
|
<image class="user-icon" v-if="currentInfo.picture" :src="currentInfo.picture" mode="aspectFit"></image>
|
|
<view class="name">
|
<view class="t1">
|
{{ (!!currentInfo.supplierDTO?(currentInfo.supplierDTO.name):"") || currentInfo.nickName || currentInfo.loginName || '-'}}<span
|
v-if="currentInfo.supplierDTO&¤tInfo.supplierDTO.status!=='P'">
|
({{currentInfo.supplierDTO?currentInfo.supplierDTO.statusStr:''}})</span>
|
<span v-if="currentInfo.partnerDTO&¤tInfo.partnerDTO.status!=='P'">
|
({{currentInfo.partnerDTO?currentInfo.partnerDTO.statusStr:''}})</span>
|
<span v-if="!currentInfo.partnerDTO&¤tInfo.type==='partner'">(信息待完善)</span>
|
</view>
|
<view class="t2">{{currentInfo.tel || '暂无电话'}}</view>
|
</view>
|
</view>
|
|
|
</view>
|
<view class="item-container" :class="[selftype?selftype:'']">
|
<view class="title">我的收益</view>
|
<view class="flex tj-container" v-if="selftype==='partner'">.
|
<view class="tj-each">
|
<view class="num total">
|
¥{{tj.income||'0.00'}}
|
</view>
|
</view>
|
<view class="tj-each" style="flex: 1;">
|
<view class="num status">
|
待结算
|
</view>
|
</view>
|
</view>
|
<view class="line"></view>
|
|
<view class="flex tj-container" v-if="selftype==='supplier'">
|
<view class="tj-each">
|
<view class="num">
|
{{tj.dealCountLastMonth||0}}扎
|
</view>
|
<view class="name">
|
上月成交
|
</view>
|
</view>
|
<view class="tj-each">
|
<view class="num">
|
{{tj.dealCountToday||0}}扎
|
</view>
|
<view class="name">
|
今日成交
|
</view>
|
</view>
|
<view class="tj-each">
|
<view class="num">
|
{{tj.dealCountDay30||0}}扎
|
</view>
|
<view class="name">
|
近30天成交
|
</view>
|
</view>
|
</view>
|
<view class="flex tj-container">
|
<view class="tj-each" @click="selftype=='supplier'&&goto('/pages/order/order-delivery?range=today',true)">
|
<view class="num">
|
{{tj.orderCountToday||0}}单
|
</view>
|
<view class="name">
|
今日订单数
|
</view>
|
</view>
|
<view class="tj-each" @click="selftype=='supplier'&&goto('/pages/order/order-delivery?range=yesterday',true)">
|
<view class="num">
|
{{tj.orderCountYesterday||0}}单
|
</view>
|
<view class="name">
|
昨日订单数
|
</view>
|
</view>
|
<view class="tj-each" @click="selftype=='supplier'&&goto('/pages/order/order-delivery?range=month',true)">
|
<view class="num">
|
{{tj.orderCountMonth||0}}单
|
</view>
|
<view class="name">
|
本月订单数
|
</view>
|
</view>
|
</view>
|
</view>
|
<view class="item-container flex m-t-12" style="padding: 34rpx 44rpx;" v-if="selftype=='supplier'">
|
<view class="rate-view flex1" style="max-width: 140rpx;">
|
<view class="title">售后率</view>
|
<view class="title" style="color: red;">{{((tj.salesRate||0)*100).toFixed(2)}}%</view>
|
</view>
|
<view class="tj-panel pink flex1"
|
@click="goto('/pages/order/order-delivery?status=PENDING&range=today',true)">
|
<view class="name">今日待配送</view>
|
<view class="title">{{tj.deliverCount||0}}单</view>
|
</view>
|
<view class="tj-panel green flex1"
|
@click="goto('/pages/order/order-delivery?range=today',true)">
|
<view class="name green">今日配送汇总</view>
|
<view class="title">{{tj.deliverTotal||0}}单</view>
|
</view>
|
</view>
|
<view class="m-t-12" @click="getNoticeMore">
|
<uni-notice-bar class="notice-bar" color="#333" background-color="#fff" show-get-more show-icon
|
:scrollable="scrollable" :text="currentNotice.title||'暂无公告'" :key="currentNotice.id" />
|
<span v-if="!currentNotice||!currentNotice.id"> </span>
|
</view>
|
<view class="item-container">
|
<view class="title">常用功能</view>
|
<view class="flex order-icons m-t-12">
|
<view class="nav row margin-tb" v-if="selftype==='partner'"
|
@click="goto('/sub_pages/partner/order-manage/order-manage',true)">
|
<view class="img-c">
|
<image class="icon margin-bottom order-icon ddgl"
|
src="/static/images/partner/user/user-icon-ddgl.png" mode="scaleToFill" />
|
</view>
|
<view class="order-desc tg">订单管理</view>
|
</view>
|
<view class="nav row margin-tb" v-if="selftype==='supplier'"
|
@click="goto('/sub_pages/supplier/order-manage/order-manage',true)">
|
<view class="img-c">
|
<image class="icon margin-bottom order-icon ddgl"
|
src="/static/images/partner/user/user-icon-ddgl.png" mode="scaleToFill" />
|
</view>
|
<view class="order-desc tg">订单统计</view>
|
</view>
|
|
<view class="nav row margin-tb"
|
@click="goto('/sub_pages/supplier/order-settlement/order-settlement',true)">
|
<view class="img-c">
|
<image class="icon margin-bottom order-icon zdjs"
|
src="/static/images/supplier/user/user-icon-zdjs.png" mode="scaleToFill" />
|
</view>
|
<view class="order-desc tg">账单结算</view>
|
</view>
|
<view class="nav row margin-tb" @click="toFlowManage" v-if="selftype==='supplier'">
|
<view class="img-c">
|
<image class="icon margin-bottom order-icon spgl"
|
src="/static/images/supplier/user/user-icon-spgl.png" mode="scaleToFill" />
|
</view>
|
<view class="order-desc cqw">商品管理</view>
|
</view>
|
<view class="nav row margin-tb" v-if="selftype==='partner'"
|
@click="goto('/sub_pages/partner/markup-config/markup-config',true)">
|
<view class="img-c">
|
<image class="icon margin-bottom order-icon jjpz"
|
src="/static/images/partner/user/user-icon-jjpz.png" mode="scaleToFill" />
|
</view>
|
<view class="order-desc tg">加价配置</view>
|
</view>
|
<view class="nav row margin-tb" @click="goto('/sub_pages/supplier/order-sale/order-sale',true)">
|
<view class="img-c">
|
<image class="icon margin-bottom order-icon shlp"
|
src="/static/images/supplier/user/user-icon-shlp.png" mode="scaleToFill" />
|
</view>
|
<view class="order-desc syst">售后理赔</view>
|
</view>
|
<!-- <view class="nav row margin-tb" @click="printDeliveryOrder">
|
<view class="img-c">
|
<image class="icon margin-bottom order-icon kkjl"
|
src="/static/images/supplier/user/user-icon-kkjl.png" mode="scaleToFill" />
|
</view>
|
<view class="order-desc wbsp">测试蓝牙</view>
|
</view> -->
|
</view>
|
</view>
|
|
<view style="padding-bottom:200rpx">
|
</view>
|
<common-footer flg="0"></common-footer>
|
|
|
</view>
|
</template>
|
|
<script>
|
export default {
|
data() {
|
return {
|
CustomBar: uni.getStorageSync('CustomBar'),
|
StatusBar: uni.getStorageSync('StatusBar'),
|
tcode: '',
|
inviterName: '',
|
// StatusBar:0,
|
|
//公告的
|
noticeList: [],
|
currentNoticeIndex: 0,
|
currentNotice: {
|
|
},
|
scrollable: false,
|
cacheUserId: '',
|
tj: {}
|
|
};
|
},
|
onShareAppMessage() {
|
let that = this;
|
var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
|
that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
|
var url =
|
`/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数
|
return {
|
title: "花满芫",
|
path: url,
|
}
|
},
|
onShareTimeline() {
|
let that = this;
|
var name = that.currentInfo.customerDTO && that.currentInfo.customerDTO.name || that.currentInfo.supplierDTO &&
|
that.currentInfo.supplierDTO.name || that.currentInfo.partnerDTO && that.currentInfo.partnerDTO.name || ''
|
var url =
|
`/pages/login/supplier-login?shareId=${this.currentInfo&&this.currentInfo.id||''}&shareName=${name||''}`; //你的转发页面路径拼接参数
|
return {
|
title: "花满芫",
|
path: url,
|
}
|
},
|
async onPullDownRefresh() {
|
await this.$store.dispatch('getCurrentInfo')
|
uni.stopPullDownRefresh()
|
},
|
onLoad(options) {
|
const url = options.q ? decodeURIComponent(options.q) : '';
|
const urlcode = options.url && decodeURIComponent(options.url) || ''
|
},
|
onShow() {
|
this.getTj()
|
},
|
created() {
|
//公告
|
var type = ''
|
// #ifdef PUB_CUSTOMER
|
type = 'customer'
|
// #endif
|
// #ifdef PUB_SUPPLIER
|
type = 'supplier'
|
// #endif
|
// #ifdef PUB_PARTNER
|
type = 'partner'
|
// #endif
|
|
this.$http.request('get', '/api/pub/announcement/list/'+type, {
|
params: {
|
size: 5,
|
status: 'A'
|
}
|
}).then(res => {
|
if (res.code == 0) {
|
this.noticeList = (res.data && res.data || [])
|
console.log('this.noticeList', this.noticeList)
|
if (this.noticeList.length > 0) {
|
this.currentNotice = this.noticeList[0]
|
if (this.currentNotice.title && this.currentNotice.title.length >= 30) {
|
this.scrollable = true
|
} else {
|
this.scrollable = false
|
}
|
let that = this
|
// if (this.noticeList.length >= 1) {
|
// setInterval(() => {
|
// console.log('interval,1')
|
// that.currentNoticeIndex += 1
|
// that.currentNoticeIndex %= that.noticeList.length
|
// that.currentNotice = that.noticeList[that.currentNoticeIndex]
|
// that.scrollable = false
|
// that.$nextTick(() => {
|
// if (that.currentNotice.title && that.currentNotice.title
|
// .length >= 30) {
|
// that.scrollable = true
|
// } else {
|
// that.scrollable = false
|
// }
|
// })
|
|
// }, 8000)
|
// }
|
|
}
|
}
|
})
|
|
},
|
methods: {
|
printDeliveryOrder(item) {
|
//蓝牙打印
|
var that = this;
|
wx.getBluetoothAdapterState({
|
success: (result) => {
|
console.log('b s', result)
|
console.log("蓝牙状态:\n" + result.errMsg)
|
if (result.adapterState.available) {
|
if (result.adapterState.discovering) {
|
that.blueSearchDeviceCheck()
|
} else {
|
that.blueSearchDevice()
|
}
|
} else {
|
//打开蓝牙
|
wx.openBluetoothAdapter({
|
success: function(res) {
|
console.log("蓝牙已打开")
|
that.blueSearchDevice()
|
|
},
|
fail: function(res) {
|
console.log('res', res)
|
that.$message.showToast('蓝牙未打开')
|
}
|
})
|
|
}
|
},
|
fail: (res) => {
|
console.log("蓝牙状态", res)
|
that.$message.showToast('获取蓝牙状态失败')
|
|
}
|
})
|
},
|
blueSearchDevice() {
|
var that = this;
|
|
wx.startBluetoothDevicesDiscovery({
|
success: (res) => {
|
//打印调试日志
|
console.log("搜索设备返回" + JSON.stringify(res))
|
that.blueSearchDeviceCheck()
|
|
},
|
fail: (res) => {
|
console.log('error search', res)
|
that.$message.showToast('打开蓝牙搜索设备失败')
|
|
}
|
})
|
|
},
|
blueSearchDeviceCheck() {
|
let that = this
|
wx.getBluetoothDevices({
|
success: (res) => {
|
var printDevice = undefined
|
for (var device of res.devices) {
|
if (device.name.indexOf('GP-M') >= 0) {
|
printDevice = device
|
// RSSI: -57
|
// advertisServiceUUIDs: Array(2)
|
// 0: "000018f0-0000-1000-8000-00805f9b34fb"
|
// 1: "e7810a71-73ae-499d-8c15-faa9aef0c3f2"
|
// length: 2
|
// nv_length: (...)
|
// __proto__: Array(0)
|
// deviceId: "89:E2:AF:33:46:2B"
|
// name: "GP-M322-5565_BLE"
|
break
|
} else {
|
|
}
|
}
|
if (!printDevice) {
|
that.$message.showToast('未找到可用打印机,请联系客服')
|
that.stopBluetoothDevicesDiscovery()
|
|
} else {
|
wx.createBLEConnection({
|
deviceId: printDevice.deviceId,
|
success: function(res) {
|
// https: //blog.csdn.net/weixin_51375107/article/details/116009436
|
console.log('连接设备返回:' + res.errMsg);
|
that.$message.showToast('连接设备返回:' + res.errMsg)
|
// escpos怎么来 →点击查看智谱清言的回答https://chatglm.cn/share/FEXaC
|
|
},
|
fail: function(res) {
|
console.log('createBLEConnection fail', res)
|
that.$message.showToast('连接打印机失败')
|
},
|
complete() {
|
that.stopBluetoothDevicesDiscovery()
|
|
}
|
})
|
}
|
// res.devices.forEach((device, i) => {
|
// console.log('device',
|
// device)
|
// // if (device.deviceId == that.data
|
// // .deviceId) {
|
// // console.log("物联网设备已找到")
|
// // that.$message.showToast(
|
// // '打印设备已找到')
|
// // return;
|
// // }
|
// })
|
},
|
fail: (res) => {
|
console.log('getBluetoothDevices',
|
res)
|
that.$message.showToast('获取蓝牙设备失败')
|
|
}
|
})
|
},
|
stopBluetoothDevicesDiscovery() {
|
var that = this;
|
wx.stopBluetoothDevicesDiscovery({
|
success: (res) => {
|
console.log("停止扫描设备")
|
},
|
})
|
},
|
getTj() {
|
// /api/supplier/delivery
|
|
if (this.currentInfo.id && this.currentInfo.id !== this.cacheUserId) {
|
this.cacheUserId = this.currentInfo.id
|
let that = this
|
setTimeout(() => {
|
//其他统计
|
// #ifdef PUB_SUPPLIER
|
this.$http.request('get', '/api/supplier/delivery/statistics', {}).then(res => {
|
if (res.code === 0) {
|
that.tj = res.data || {}
|
}
|
})
|
// #endif
|
// #ifdef PUB_PARTNER
|
this.$http.request('get', '/api/partner/order/statistics', {}).then(res => {
|
if (res.code === 0) {
|
that.tj = res.data || {}
|
}
|
})
|
// #endif
|
|
}, 200)
|
}
|
|
},
|
async toFlowManage() {
|
|
|
if (!this.currentInfo.supplierDTO) {
|
await this.$message.confirm('尚未入驻店铺信息,是否前往入驻?')
|
this.goto('/sub_pages/supplier/supplier-info/supplier-info', true)
|
return
|
}
|
if (this.currentInfo.supplierDTO) {
|
//需要刷新一下当前用户信息
|
this.$message.showLoading()
|
await this.$store.dispatch('getCurrentInfo')
|
this.$message.hideLoading()
|
|
if (this.currentInfo.supplierDTO.status == 'P') {
|
|
} else {
|
if (this.currentInfo.supplierDTO.status == 'R') {
|
await this.$message.confirm('店铺信息审核不通过,是否前往修改信息?')
|
this.goto('/sub_pages/supplier/supplier-info/supplier-info', true)
|
return
|
} else {
|
this.$message.showToast('审核中请耐心等待')
|
return
|
}
|
|
}
|
}
|
console.log('goto')
|
this.goto('/sub_pages/supplier/flower-manage/flower-manage', true)
|
},
|
getNoticeMore() {
|
uni.navigateTo({
|
url: '/pages/notice/list?id=' + this.currentNotice.id
|
})
|
},
|
|
|
|
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
@import "../user/user.scss";
|
|
@import "./home.scss";
|
</style>
|
|
<style lang="scss" scoped>
|
</style>
|