2025-08-12 09:13:50 +08:00

209 lines
7.4 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view class="page-body">
<!-- 顶部信息卡片 -->
<view class="card-header">
<!-- 顶部信息卡片第一行 -->
<view class="uni-flex ai-center jc-between fs12">
<!-- 左侧 -->
<span>服务区名称{{dataDetail.SERVERPART_NAME || ''}}</span>
<!-- 右侧 -->
<span>实收金额{{dataDetail.CASHPAY !== null ?
dataDetail.CASHPAY : ''}}</span>
</view>
<!-- 顶部信息卡片第二行 -->
<view class="uni-flex ai-center jc-between fs12">
<!-- 左侧 -->
<span>片区名称{{dataDetail.SPREGIONTYPE_NAME || ''}}</span>
<!-- 右侧 -->
<span>长短款{{dataDetail.DIFFERENT_PRICE !== null ?
dataDetail.DIFFERENT_PRICE : ''}}</span>
</view>
</view>
<!-- 详情信息 -->
<view class="modle-title">
<h2>服务区营收数据汇总</h2>
</view>
<!-- 详情信息卡片 -->
<view class="content-detail-box main-card ino-flex ai-center uni-column">
<!-- 单列样式 -->
<!-- 服务区名称 -->
<view class="cellTopStyle">
<span class="fourth-name">服务区名称</span>
<span>{{dataDetail.SERVERPART_NAME || ''}}</span>
</view>
<!-- 片区名称 -->
<view class="cellTopStyle">
<span class="fourth-name">片区名称</span>
<span>{{dataDetail.SPREGIONTYPE_NAME || ''}}</span>
</view>
<!-- 实收金额 -->
<view class="cellTopStyle">
<span class="fourth-name">实收金额</span>
<span>{{dataDetail.CASHPAY !== null ?
dataDetail.CASHPAY : ''}}</span>
</view>
<!-- 客单数量 -->
<view class="cellTopStyle">
<span class="fourth-name">客单数量</span>
<span>{{dataDetail.TICKETCOUNT !== null ?
dataDetail.TICKETCOUNT : ''}}</span>
</view>
<!-- 销售总数 -->
<view class="cellTopStyle">
<span class="fourth-name">销售总数</span>
<span>{{dataDetail.TOTALCOUNT !== null ?
dataDetail.TOTALCOUNT : ''}}</span>
</view>
<!-- 总销售额 -->
<view class="cellTopStyle">
<span class="fourth-name">总销售额</span>
<span>{{dataDetail.TOTALSELLAMOUNT !== null ?
dataDetail.TOTALSELLAMOUNT : ''}}</span>
</view>
<!-- 总优惠额 -->
<view class="cellTopStyle">
<span class="fourth-name">总优惠额</span>
<span>{{dataDetail.TOTALOFFAMOUNT !== null ?
dataDetail.TOTALOFFAMOUNT : ''}}</span>
</view>
<!-- 现金 -->
<view class="cellTopStyle">
<span class="fourth-name">现金</span>
<span>{{dataDetail.CASH !== null ?
dataDetail.CASH : ''}}</span>
</view>
<!-- 长短款 -->
<view class="cellTopStyle">
<span class="fourth-name">长短款</span>
<span>{{dataDetail.DIFFERENT_PRICE !== null ?
dataDetail.DIFFERENT_PRICE : ''}}</span>
</view>
<!-- 站点类型 -->
<view class="cellTopStyle">
<span class="fourth-name">站点类型</span>
<span>{{dataDetail.STATISTICS_TYPE !== null ?
serverpartsiteType[dataDetail.STATISTICS_TYPE] : ''}}</span>
</view>
</view>
</view>
</template>
<script>
import {mapGetters,mapMutations} from 'vuex'
export default {
data() {
return {
pageData: {
type: null,
id: null
},
loading: true,
serverpartids: null,
serverpartsiteType: null,
dataDetail: {},
}
},
methods: {
...mapMutations(['shouldReLoadingList']),
/**
* 调用接口获取数据详情
*
* Api接口地址EShangApiMain/AutoTest/GetEndaccountReport
*/
getDetail(option) {
this.$request.$webGetTest("EShangApiMain/AutoTest/GetEndaccountReport", {
//这里设置接口参数
SearchStatisticsStartDate: option.SearchStatisticsStartDate,
SearchStatisticsEndDate: option.SearchStatisticsEndDate,
SERVERPART_ID: option.SERVERPART_ID,
})
.then(res => {
uni.hideLoading()
this.loading = false
if (res.Result_Code !== 100) {
return
}
this.dataDetail = res.Result_Data.List.length > 0 ? res.Result_Data.List[0] : null
})
},
// 获取数据异常类型枚举
async getType() {
this.serverpartids = await this.$util.getFieldEnumByField({
FieldExplainField: 'ServerpartIds'
})
this.serverpartsiteType = await this.$util.getFieldEnumByField({
FieldExplainField: 'SERVERPARTSITE_TYPE'
})
}
},
onLoad(option) {
uni.showLoading()
this.pageData = option
this.loading = true
this.getType()
this.getDetail(option)
this.$forceUpdate()
}
}
</script>
<style scoped>
.page-body {
min-height: 100%;
padding: 40rpx 25rpx;
background-color: #fff;
box-sizing: border-box;
padding-bottom: 196rpx;
}
.card-header {
border-radius: 10rpx;
margin: 0 26rpx 22rpx 26rpx;
background: linear-gradient(to right, #8998bb 0%, #a9b5d2 100%);
color: #FFFFFF;
padding: 24rpx 16rpx;
}
.card-header h3 {
padding-bottom: 10rpx;
font-size: 30rpx;
}
.card-header .fs12>text {
font-size: 24rpx;
}
.cellTopStyle {
line-height: 45rpx;
width: 100%;
display: flex;
align-items: center; //上下对齐
justify-content: space-between; //两端对齐
}
.fourth-name {
min-width: 120rpx;
max-width: 140rpx;
color: #ADB2BF;
font-size: 26rpx;
white-space: nowrap;
}
.modle-title {
color: #000;
padding: 36rpx 30rpx 24rpx 30rpx;
font-size: 26rpx;
display: flex;
align-items: center;
justify-content: space-between;
}
.modle-title h2 {
font-weight: bolder;
}
.content-detail-box {
margin: 0 26rpx 22rpx 26rpx;
background: #ffffff;
border-radius: 8rpx;
box-shadow: 0rpx 2rpx 8rpx 0rpx rgba(231, 231, 231, 0.67);
overflow: hidden;
position: relative;
padding: 10rpx 30rpx 16rpx 30rpx;
font-size: 26rpx;
}
.content-detail-box span {
font-size: 26rpx;
}
</style>