同步版本

This commit is contained in:
唐明明
2021-08-24 08:53:35 +08:00
parent bfea54eb8f
commit 9a2acd3813
256 changed files with 15703 additions and 1803 deletions

View File

@@ -2,18 +2,18 @@
<template>
<view class="goods--list">
<block v-if="list.length > 0">
<view class="goods--item" v-for="(item, index) in list" :key="index">
<view class="goods--item" v-for="(item, index) in list" :key="index" @click="goods(item)">
<view class="cover">
<image class="cover--src" :src="item.cover" mode="aspectFill" />
</view>
<view class="content">
<view class="title">{{item.title}}</view>
<view class="title">{{item.name}}</view>
<view class="content-flex">
<view class="price eb" v-if="priceType === 'EB'">
{{item.price}}<text>易币</text>
</view>
<view class="price cny" v-if="priceType === 'CNY'">
<text></text>{{item.price}}
<text></text>{{item.original_price}}
</view>
<view class="sales">已易{{item.sales}}</view>
</view>
@@ -49,6 +49,11 @@ export default {
type : String,
default : '暂无商品数据 -_-!'
}
},
methods:{
goods(e){
this.$emit('on-goods', e)
}
}
};
</script>
@@ -63,7 +68,7 @@ export default {
box-sizing: border-box;
width: calc(50% - 20rpx);
margin: 10rpx;
border-radius: $radius/4;
border-radius: $radius/2;
overflow: hidden;
.cover{
position: relative;
@@ -83,6 +88,8 @@ export default {
font-size: $title-size-lg;
line-height: 40rpx;
height: 80rpx;
text-align: justify;
@extend .ellipsis;
}
.content-flex{
display: flex;
@@ -92,7 +99,7 @@ export default {
.price{
color: $text-price;
font-weight: bold;
font-size: $title-size + 8;
font-size: $title-size;
text{
font-size: $title-size-sm;
font-weight: normal;

View File

@@ -1,30 +0,0 @@
<template>
<view>
<view class="industry--list">
<view class="industry--box">
<image class="industry--cover" src="../../static/dev/good_cover_00.jpg" mode="aspectFill"></image>
<view class="industry--content">
<view class="industry--title">MLB</view>
<view class="industry--credibility">信誉值</view>
<view class="industry--business">主营</view>
<view class="industry--trading">成交</view>
</view>
</view>
</view>
</view>
</template>
<script>
export default {
name:"industry-list",
data() {
return {
};
}
}
</script>
<style lang="scss">
</style>

View File

@@ -0,0 +1,104 @@
<template>
<view class="industry--list">
<block v-if="list.length > 0">
<view class="industry--box" v-for="(item, index) in list" :key="index" @click="industry(item)">
<image class="industry--cover" :src="item.cover" mode="aspectFill"></image>
<view class="industry--content">
<view class="industry--title">{{item.name}}</view>
<view class="industry--credibility">
<uni-rate
:readonly="true"
color="#ddd"
active-color="#c82626"
:value="item.star"
:size="14"
/>
</view>
<view class="industry--business">{{item.industry.title}}</view>
<uni-icons class="industry--arrow" type="arrowright" color="#ddd" size="14" />
</view>
</view>
</block>
<block v-else>
<view class="industry--null">
<view>{{toast}}</view>
</view>
</block>
</view>
</template>
<script>
export default {
name:"industry-list",
props: {
// 数据列表
list: {
type : Array,
default : () => {
return new Array
}
},
// 列表空提示
toast : {
type : String,
default : '暂无商品数据 -_-!'
}
},
methods:{
industry(e){
this.$emit('on-industry', e)
}
}
}
</script>
<style lang="scss" scoped>
// 列表信息
.industry--list{
padding-bottom: $padding;
}
.industry--box{
position: relative;
margin: $margin - 10 $margin;
background: white;
border-radius: $radius/2;
padding: $padding ($padding*3) $padding ($padding * 2 + 128);
min-height: 128rpx;
.industry--cover{
position: absolute;
left: $padding;
top: $padding;
width: 128rpx;
height: 128rpx;
}
.industry--title{
font-weight: bold;
font-size: $title-size-lg;
line-height: 40rpx;
}
.industry--credibility{
padding-top: 8rpx;
height: 48rpx;
box-sizing: border-box;
}
.industry--business{
line-height: 40rpx;
font-size: $title-size-sm;
color: $text-gray;
}
.industry--arrow{
position: absolute;
right: $margin;
top: 50%;
margin-top: -7px;
}
}
// 数据空
.industry--null{
width: 100%;
padding: 20vh 0;
text-align: center;
font-size: $title-size-m;
color: $text-gray;
}
</style>

View File

@@ -0,0 +1,249 @@
<template>
<view class="boos">
<!-- 店铺交易数据 -->
<view class="statistical">
<view class="item">
<view class="number">{{wordData.top.barter_total || 0}}</view>
<view class="text">总易货额</view>
</view>
<view class="item">
<view class="number">{{wordData.top.trading_day || 0}}</view>
<view class="text">今日交易额</view>
</view>
<view class="item">
<view class="number">{{wordData.top.eb_in || 0}}</view>
<view class="text">E货额度收入</view>
</view>
<view class="item">
<view class="number">{{wordData.top.cash_in || 0}}</view>
<view class="text">现金收入</view>
</view>
</view>
<!-- 店铺概况 -->
<view class="general">
<view class="general-box">
<view class="general-item" @click="$Router.push({name: 'Visitors'})">
<view class="number">{{wordData.middle.visitors || 0}}</view>
<view class="text">访客统计</view>
</view>
<view class="general-item" @click="$Router.push({name: 'Customer'})">
<view class="number">{{wordData.middle.clinch || 0}}</view>
<view class="text">成交客户</view>
</view>
<view class="general-item" @click="$Router.push({name: 'Employees'})">
<view class="number">{{wordData.middle.employees || 0}}</view>
<view class="text">员工数量</view>
<!-- <uni-icons type="arrowright" size="14" color="#555"></uni-icons> -->
</view>
<view class="general-item">
<view class="number">{{wordData.middle.sale || 0}}</view>
<view class="text">在售权证</view>
</view>
<view class="general-item">
<view class="number">{{wordData.middle.hold || 0}}</view>
<view class="text">权证持有</view>
</view>
<view class="general-item">
<view class="number">{{wordData.middle.transfer || 0}}</view>
<view class="text">转让权证</view>
</view>
</view>
</view>
<!-- 店铺订单管理 -->
<view class="tool-flex order">
<view class="order-item">
<view class="number" v-if="wordData.order.not_shipped > 0">{{wordData.order.not_shipped}}</view>
<image class="icon" src="@/static/icons/order_icon_01.png" mode="aspectFill"></image>
<view class="title">待发货</view>
</view>
<view class="order-item">
<view class="number" v-if="wordData.order.already_shipped > 0">{{wordData.order.already_shipped}}</view>
<image class="icon" src="@/static/icons/order_icon_02.png" mode="aspectFill"></image>
<view class="title">已发货</view>
</view>
<view class="order-item">
<view class="number" v-if="wordData.order.not_pick > 0">{{wordData.order.not_pick}}</view>
<image class="icon" src="@/static/icons/order_icon_03.png" mode="aspectFill"></image>
<view class="title">待提货</view>
</view>
<view class="order-item">
<view class="number" v-if="wordData.order.already_pick > 0">{{wordData.order.already_pick}}</view>
<image class="icon" src="@/static/icons/order_icon_00.png" mode="aspectFill"></image>
<view class="title">已提货</view>
</view>
<view class="order-item">
<view class="number" v-if="wordData.order.after_sale > 0">{{wordData.order.after_sale}}</view>
<image class="icon" src="@/static/icons/order_icon_04.png" mode="aspectFill"></image>
<view class="title">退换货</view>
</view>
</view>
<!-- 店铺工具 -->
<view class="tool-flex store">
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_00.png" mode="aspectFill"></image>
<view class="title">扫码验证</view>
</view>
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_01.png" mode="aspectFill"></image>
<view class="title">商品权证</view>
</view>
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_02.png" mode="aspectFill"></image>
<view class="title">优惠券管理</view>
</view>
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_03.png" mode="aspectFill"></image>
<view class="title">收款管理</view>
</view>
</view>
<!-- 企业营销工具管理 -->
<view class="tool-flex store">
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_04.png" mode="aspectFill"></image>
<view class="title">基础信息</view>
</view>
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_05.png" mode="aspectFill"></image>
<view class="title">智能名片</view>
</view>
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_06.png" mode="aspectFill"></image>
<view class="title">营销推广码</view>
</view>
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_07.png" mode="aspectFill"></image>
<view class="title">部门/门店</view>
</view>
<view class="store-item">
<image class="icon" src="@/static/icons/tool_icon_08.png" mode="aspectFill"></image>
<view class="title">员工管理</view>
</view>
</view>
</view>
</template>
<script>
export default {
name:"store-boss",
props:{
// 工作台信息
wordData:{
type: Object,
default: () => {
return {
top : {},
middle : {},
order : {}
}
}
}
}
}
</script>
<style lang="scss" scoped>
.boos{
// 店铺统计
.statistical{
display: flex;
background: $text-price;
padding: $padding ($padding/2) $padding*5;
flex-wrap: wrap;
justify-content: space-between;
.item{
width: calc(25% - #{$padding});
text-align: center;
color: white;
margin: 0 $margin / 2;
.number{
font-weight: bold;
font-size: $title-size;
}
.text{
font-size: $title-size-sm;
}
}
}
// 店铺概况
.general{
margin: -$margin*4 $margin 0 $margin;
.general-box{
background-color: white;
border-radius: $radius/2;
display: flex;
padding: $padding $padding/2;
flex-wrap: wrap;
.general-item{
width: 33.33%;
text-align: center;
padding: $padding/2;
box-sizing: border-box;
.number{
font-weight: bold;
font-size: $title-size;
line-height: 50rpx;
}
.text{
font-size: $title-size-sm;
color: $text-gray;
line-height: 40rpx;
}
}
}
}
// 店铺工具
.tool-flex{
background: white;
border-radius: $radius/2;
padding: $padding/2;
margin: $margin;
display: flex;
flex-wrap: wrap;
.store-item{
padding: $padding/2;
text-align: center;
width: 25%;
box-sizing: border-box;
.icon{
width: 68rpx;
height: 68rpx;
vertical-align: top;
}
.title{
font-size: $title-size-sm;
color: $text-gray;
padding-top: $padding/3;
}
}
.order-item{
position: relative;
padding: $padding/2;
text-align: center;
width: 20%;
box-sizing: border-box;
.icon{
width: 58rpx;
height: 58rpx;
vertical-align: top;
}
.title{
font-size: $title-size-sm;
color: $text-gray;
}
.number{
position: absolute;
top: 10rpx;
left: calc( 50% + 10rpx );
font-size: $title-size-sm;
background: $text-price;
color: white;
height: 30rpx;
line-height: 30rpx;
border-radius: 15rpx;
min-width: 30rpx;
z-index: 9;
}
}
}
}
</style>

View File

@@ -0,0 +1,159 @@
<template>
<view class="staff">
员工
</view>
</template>
<script>
export default {
name:"store-staff",
props:{
// 店铺统计
top: {
type: Object,
default: ()=> {
return {
barter_total: 0,
trading_day : 0,
eb_in : 0,
cash_in : 0
}
}
},
// 店铺概况
middle: {
type: Object,
default: ()=> {
return {
visitors : 0,
clinch : 0,
employees: 0,
sale : 0,
hold : 0,
transfer : 0
}
}
},
// 店铺订单
order: {
type: Object,
default: ()=> {
return {
not_shipped : 0,
already_shipped : 0,
not_pick : 0,
already_pick : 0,
after_sale : 0
}
}
}
}
}
</script>
<style lang="scss" scoped>
.staff{
// 店铺统计
.statistical{
display: flex;
background: $text-price;
padding: $padding ($padding/2) $padding*5;
flex-wrap: wrap;
justify-content: space-between;
.item{
width: calc(25% - #{$padding});
text-align: center;
color: white;
margin: 0 $margin / 2;
.number{
font-weight: bold;
font-size: $title-size;
}
.text{
font-size: $title-size-sm;
}
}
}
// 店铺概况
.general{
margin: -$margin*4 $margin 0 $margin;
.general-box{
background-color: white;
border-radius: $radius/2;
display: flex;
padding: $padding $padding/2;
flex-wrap: wrap;
.general-item{
width: 33.33%;
text-align: center;
padding: $padding/2;
box-sizing: border-box;
.number{
font-weight: bold;
font-size: $title-size;
line-height: 50rpx;
}
.text{
font-size: $title-size-sm;
color: $text-gray;
line-height: 40rpx;
}
}
}
}
// 店铺工具
.tool-flex{
background: white;
border-radius: $radius/2;
padding: $padding/2;
margin: $margin;
display: flex;
flex-wrap: wrap;
.store-item{
padding: $padding/2;
text-align: center;
width: 25%;
box-sizing: border-box;
.icon{
width: 68rpx;
height: 68rpx;
vertical-align: top;
}
.title{
font-size: $title-size-sm;
color: $text-gray;
padding-top: $padding/3;
}
}
.order-item{
position: relative;
padding: $padding/2;
text-align: center;
width: 20%;
box-sizing: border-box;
.icon{
width: 58rpx;
height: 58rpx;
vertical-align: top;
}
.title{
font-size: $title-size-sm;
color: $text-gray;
}
.number{
position: absolute;
top: 10rpx;
left: calc( 50% + 10rpx );
font-size: $title-size-sm;
background: $text-price;
color: white;
height: 30rpx;
line-height: 30rpx;
border-radius: 15rpx;
min-width: 30rpx;
z-index: 9;
}
}
}
}
</style>