This commit is contained in:
Sliverber 2024-05-10 18:00:23 +08:00
parent 008dbe0408
commit 274e5eb462
6 changed files with 1143 additions and 2 deletions

View File

@ -54,7 +54,7 @@
</view>
</view>
<view class="cardcont">
<view class="cont_li" v-for="(item,index) in orderList" :key="index">
<view class="cont_li" v-for="(item,index) in orderList" :key="index" >
<view class="cont_li_left">
<view class="txt">
押金提现

View File

@ -77,6 +77,33 @@
"navigationStyle": "custom",
"enablePullDownRefresh" : false
}
},
{
"path" : "worke/worke_Operation",
"style" :
{
"navigationBarTitleText" : "",
"navigationStyle": "custom",
"enablePullDownRefresh" : false
}
},
{
"path" : "worke/worke_income",
"style" :
{
"navigationBarTitleText" : "",
"navigationStyle": "custom",
"enablePullDownRefresh" : false
}
},
{
"path" : "worke/woke_deviceMgmt",
"style" :
{
"navigationBarTitleText" : "",
"navigationStyle": "custom",
"enablePullDownRefresh" : false
}
}
// ... A

View File

@ -1,6 +1,6 @@
<template>
<view class="page">
<u-navbar :is-back="false" title="订单" :border-bottom="false" :background="bgc" title-color='#2E4975'
<u-navbar :is-back="false" title="设备管理" :border-bottom="false" :background="bgc" title-color='#2E4975'
title-size='36' height='36'></u-navbar>
<view class="top_box">
<view class="left_text">

View File

@ -0,0 +1,341 @@
<template>
<view class="page">
<u-navbar title="设备管理" :border-bottom="false" :background="bgc" title-color='#000' title-size='36'
height='36'></u-navbar>
<view class="tap">
<!-- <view class="tap_cont " :class="curtitidx==0?'act1':''" @click="changeidx(0)">
投放中设备
</view>
<view class="tap_cont" :class="curtitidx==1?'act1':''" @click="changeidx(1)">
仓库中设备
</view> -->
</view>
<view class="stause_box">
<view class="stause_li">
设备状态 <view class="iconfont icon-xiangxia1"></view>
</view>
<view class="stause_li" style="margin-left: 30rpx;">
电量排序 <view class="iconfont icon-xiangxia1"></view>
</view>
</view>
<template>
<view class="info_card" style="margin-top: 20rpx;">
<view class="info_tit">
<view class="tit_left">
<image src="https://lxnapi.ccttiot.com/bike/img/static/uTuWiPEViwzaPPHAgjdN" mode=""></image>
<image src="https://lxnapi.ccttiot.com/bike/img/static/uGY25CNyW7Vz0LJcOYtS" mode=""></image>
车牌号U-00122323
</view>
<view class="tit_right">
<view class="yuan"></view>
待租
</view>
</view>
<view class="lines"></view>
<view class="cont">
<view class="info_li">
<view class="half_infoli">
支付金额<span>0.00</span>
</view>
<view class="half_infoli">
已退款<span>0.00</span>
</view>
</view>
<view class="info_li">
<view class="half_infoli">
手续费<span>0.00</span>
</view>
<view class="half_infoli">
收入<span style="color:#4C97E7 ;">0.00</span>
</view>
</view>
</view>
</view>
</template>
<view class="bot_box">
<view class="step1" v-if="false">
<view class="step1_left">
设备总数<span>10</span>
</view>
<view class="right_box">
批量操作
</view>
</view>
<view class="step2">
<view class="top">
<view class="top_left">
<image src="https://lxnapi.ccttiot.com/bike/img/static/uTuWiPEViwzaPPHAgjdN" mode=""></image>
<image src="https://lxnapi.ccttiot.com/bike/img/static/uGY25CNyW7Vz0LJcOYtS" mode=""></image>
全选
</view>
<view class="top_right">
已选设备1
</view>
</view>
<view class="bot_btn">
<view class="btn">
取消
</view>
<!-- <view class="btn">
返仓
</view> -->
<view class="btn">
车辆禁用
</view>
<view class="btn">
车辆解禁
</view>
</view>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
curtitidx:0,
bgc: {
backgroundColor: "#fff",
},
}
},
methods: {
changeidx(idx){
this.curtitidx=idx
},
}
}
</script>
<style lang="scss">
page {
background-color: #F6F6F6 ;
}
.page {
width: 750rpx;
.info_card {
background: #FFFFFF;
.info_tit {
display: flex;
flex-wrap: nowrap;
padding: 22rpx 28rpx;
.tit_left{
display: flex;
align-items: center;
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
image{
width: 46rpx;
height: 46rpx;
}
}
.tit_right{
display: flex;
flex-wrap: nowrap;
align-items: center;
margin-left: auto;
font-weight: 400;
font-size: 28rpx;
color: #4C97E7;
.yuan{
margin-right: 12rpx;
margin-top: 6rpx;
width: 15rpx;
height: 15rpx;
border-radius: 50%;
background: #4C97E7;
}
}
}
.lines {
width: 750rpx;
height: 2rpx;
border: 2rpx solid #ccc;
}
.cont {
padding: 26rpx 28rpx;
.info_li {
display: flex;
flex-wrap: nowrap;
font-weight: 400;
font-size: 28rpx;
color: #808080;
span {
color: #3D3D3D;
}
line-height: 48rpx;
.half_infoli {
display: flex;
flex-wrap: nowrap;
width: 50%;
font-weight: 400;
font-size: 28rpx;
color: #808080;
span {
color: #3D3D3D;
}
.input{
width: 30%;
}
}
}
}
}
.bot_box{
padding: 0 30rpx;
position: fixed;
bottom: 0;
width: 750rpx;
height: 232rpx;
background: #FFFFFF;
box-shadow: 0rpx 8rpx 20rpx 0rpx rgba(0,0,0,0.3);
.step2{
padding:42rpx 32rpx ;
display: flex;
flex-wrap: wrap;
// align-items: center;
// flex-wrap: nowrap;
width: 100%;
height: 100%;
.top{
width: 100%;
display: flex;
.top_left{
display: flex;
flex-wrap: nowrap;
font-weight: 400;
font-size: 36rpx;
color: #3D3D3D;
image{
width: 46rpx;
height: 46rpx;
}
}
.top_right{
font-weight: 400;
font-size: 36rpx;
color: #3D3D3D;
margin-left: auto;
}
}
.bot_btn{
display: flex;
flex-wrap: wrap;
width: 750rpx;
background: #fff;
// background: linear-gradient( 180deg, #FFFFFF 0%, rgba(255,255,255,0) 100%);
.btn:nth-child(4n) {
margin-right: 0;
}
.btn{
margin-right: 18rpx;
display: flex;
align-items: center;
justify-content: center;
width: 164rpx;
height: 66rpx;
background: #E2F2FF;
border-radius: 0rpx 0rpx 0rpx 0rpx;
border: 2rpx solid #4C97E7;
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
}
}
}
.step1{
display: flex;
align-items: center;
flex-wrap: nowrap;
width: 100%;
height: 100%;
.step1_left{
font-weight: 400;
font-size: 36rpx;
color: #3D3D3D;
span{
color: #4C97E7;
}
}
.right_box{
margin-left: auto;
display: flex;
align-items: center;
justify-content: center;
width: 244rpx;
height: 66rpx;
background: #4C97E7;
border-radius: 0rpx 0rpx 0rpx 0rpx;
border: 2rpx solid #4C97E7;
font-weight: 500;
font-size: 28rpx;
color: #FFFFFF;
}
}
}
.stause_box{
background: #fff;
padding: 44rpx 30rpx;
display: flex;
flex-wrap: nowrap;
.stause_li{
display: flex;
flex-wrap: nowrap;
align-items: center;
font-weight: 400;
font-size: 32rpx;
color: #3D3D3D;
.icon-xiangxia1{
margin-left: 6rpx;
font-size: 20rpx;
}
}
}
.tap{
padding-top: 24rpx;
width: 750rpx;
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: space-around;
background: #fff;
.tap_cont{
text-align: center;
padding-bottom: 15rpx;
width: 200rpx;
font-weight: 500;
font-size: 32rpx;
color: #3D3D3D;
border-bottom: 6rpx solid #fff ;
}
.act1{
border-bottom: 6rpx solid #4C97E7 ;
color: #4C97E7;
}
}
}
</style>

View File

@ -0,0 +1,454 @@
<template>
<view class="page">
<u-navbar title="运营数据" :border-bottom="false" :background="bgc" title-color='#000' title-size='36'
height='36'></u-navbar>
<view class="top_box">
<view class="left_text">
时间范围
</view>
<view class="timebox">
<view class="left_time" @click="time1=true">
{{firsTime}}
</view>
-
<view class="right_time" @click="time2=true">
{{lasTime}}
</view>
</view>
</view>
<view class="data_box">
<view class="data_cont act1">
今日
</view>
<view class="data_cont">
昨日
</view>
<view class="data_cont">
本月
</view>
<view class="data_cont">
上个月
</view>
</view>
<view class="top_card">
<view class="tit">
<image src="https://lxnapi.ccttiot.com/bike/img/static/uR7EhQMLnjuRoi0G3tA6" mode=""></image>
收入相关
</view>
<view class="info">
<view class="info_li">
总营收 <span style="color: #4C97E7;">0.00</span>
</view>
<view class="info_li">
累计待支付 <span style="color: #4C97E7;">0.00</span>
</view>
</view>
<view class="info">
<view class="info_li">
已支付 <span style="color: #3D3D3D ;">0.00</span>
</view>
<view class="info_li">
已退款 <span style="color: #3D3D3D ;">0.00</span>
</view>
</view>
</view>
<view class="cont_box">
<view class="cont_info">
<view class="info_li" style="color:#4C97E7 ;">
租赁费
</view>
<view class="info_li" style="color:#4C97E7 ;">
调度费
</view>
</view>
<view class="cont_info">
<view class="info_li">
已支付2.00
</view>
<view class="info_li">
已支付2.00
</view>
</view>
<view class="cont_info">
<view class="info_li">
已退款2.00
</view>
<view class="info_li">
已退款2.00
</view>
</view>
<view class="cont_info">
<view class="info_li" style="color:#4C97E7 ;">
租赁费
</view>
<view class="info_li" style="color:#4C97E7 ;">
调度费
</view>
</view>
<view class="cont_info">
<view class="info_li">
已支付2.00
</view>
<view class="info_li">
已支付2.00
</view>
</view>
<view class="cont_info">
<view class="info_li">
已退款2.00
</view>
<view class="info_li">
已退款2.00
</view>
</view>
</view>
<view class="card">
<view class="tit">
<image src="https://lxnapi.ccttiot.com/bike/img/static/uGs0Ayq797AurrBpU8xm" mode=""></image>
订单相关
</view>
<view class="info_box">
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
新增行程订单
</view>
</view>
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
已支付订单
</view>
</view>
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
已退款订单
</view>
</view>
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
待支付订单
</view>
</view>
</view>
</view>
<view class="lines"></view>
<view class="card">
<view class="tit">
<image src="https://lxnapi.ccttiot.com/bike/img/static/uBgz6OZvl3KHGGGJ16vy" mode=""></image>
车辆相关
</view>
<view class="info_box">
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
运营中车辆
</view>
</view>
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
有订单车辆
</view>
</view>
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
无订单车辆
</view>
</view>
</view>
</view>
<view class="lines"></view>
<view class="card">
<view class="tit">
<image src="https://lxnapi.ccttiot.com/bike/img/static/uCpE3kS6X0uD9q6pWzUu" mode=""></image>
用户相关
</view>
<view class="info_box">
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
用户总数
</view>
</view>
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
新增用户
</view>
</view>
<view class="one_cont">
<view class="text">
0
</view>
<view class="text">
租赁用户
</view>
</view>
</view>
</view>
<u-picker mode="time" v-model="time1" :params="params" @confirm="confirm1"
:default-time='pickertime'></u-picker>
<u-picker mode="time" v-model="time2" :params="params" @confirm="confirm2"
:default-time='pickertime'></u-picker>
</view>
</template>
<script>
export default {
data() {
return {
bgc: {
backgroundColor: "#fff",
},
time1: false,
time2: false,
lasTime: '00-00',
firsTime: '00-00',
params: {
year: true,
month: true,
day: true,
hour: false,
minute: false,
second: false
},
}
},
methods: {
confirm1(e) {
console.log(e, 'eeeeeeee');
this.firsTime = e.year + '-' + e.month + '-' + e.day
},
confirm2(e) {
this.lasTime = e.year + '-' + e.month + '-' + e.day
},
}
}
</script>
<style lang="scss">
page {
background-color: #fff;
}
.page {
width: 750rpx;
.lines{
width: 748rpx;
height: 22rpx;
background: #F6F6F6;
border-radius: 0rpx 0rpx 0rpx 0rpx;
}
.cont_box {
padding: 14rpx 30rpx;
width: 750rpx;
background: #F6F6F6;
border-radius: 0rpx 0rpx 0rpx 0rpx;
.cont_info {
margin-top: 8rpx;
display: flex;
flex-wrap: nowrap;
.info_li {
width: 50%;
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
}
}
}
.card{
padding: 30rpx 30rpx;
background: #FFFFFF;
// box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.2);
width: 750rpx;
// border-radius: 40rpx 40rpx 0 0;
.tit {
display: flex;
flex-wrap: nowrap;
align-items: center;
image {
margin-right: 18rpx;
width: 38rpx;
height: 38rpx;
}
font-weight: 500;
font-size: 32rpx;
color: #3D3D3D;
}
.info_box{
display: flex;
flex-wrap: nowrap;
.one_cont{
display: flex;
flex-wrap: wrap;
.text{
margin-top: 12rpx;
text-align: center;
width: 170rpx;
}
}
}
}
.top_card {
padding: 30rpx 30rpx;
background: #FFFFFF;
box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.2);
width: 750rpx;
border-radius: 40rpx 40rpx 0 0;
.info {
margin-top: 28rpx;
display: flex;
flex-wrap: nowrap;
align-items: center;
.info_li {
width: 50%;
}
}
.tit {
display: flex;
flex-wrap: nowrap;
align-items: center;
image {
margin-right: 18rpx;
width: 38rpx;
height: 38rpx;
}
font-weight: 500;
font-size: 32rpx;
color: #3D3D3D;
}
}
.data_box {
width: 672rpx;
margin: 36rpx auto;
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: space-between;
.data_cont {
display: flex;
align-items: center;
justify-content: center;
width: 150rpx;
height: 60rpx;
background: #FFFFFF;
box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.07);
border-radius: 10rpx 10rpx 10rpx 10rpx;
font-weight: 400;
font-size: 32rpx;
color: #3D3D3D;
border: 2rpx solid #fff;
}
.act1 {
background: #E2F2FF;
box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.07);
color: #4C97E7;
border: 2rpx solid #4C97E7;
}
}
.top_box {
display: flex;
flex-wrap: nowrap;
align-items: center;
padding: 28rpx 30rpx;
margin: 20rpx auto;
width: 672rpx;
height: 100rpx;
background: #FFFFFF;
box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.07);
border-radius: 10rpx 10rpx 10rpx 10rpx;
.left_text {
width: 25%;
font-weight: 400;
font-size: 32rpx;
color: #3D3D3D;
}
.timebox {
width: 75%;
display: flex;
flex-wrap: nowrap;
align-items: center;
margin-left: 34rpx;
.left_time {
text-align: center;
margin-right: 6rpx;
height: 50rpx;
width: 45%;
border: 2rpx solid #ccc;
border-radius: 12rpx;
font-weight: 400;
font-size: 32rpx;
color: #979797;
}
.right_time {
text-align: center;
margin-left: 6rpx;
height: 50rpx;
width: 45%;
border: 2rpx solid #ccc;
border-radius: 12rpx;
font-weight: 400;
font-size: 32rpx;
color: #979797;
}
}
}
}
</style>

View File

@ -0,0 +1,319 @@
<template>
<view class="page">
<u-navbar title="收入对账" :border-bottom="false" :background="bgc" title-color='#000' title-size='36'
height='36'></u-navbar>
<view class="" style="background: #FFFFFF;width: 750rpx;padding-bottom: 36rpx;">
<view class="top_box">
<view class="left_text">
时间范围
</view>
<view class="timebox">
<view class="left_time" @click="time1=true">
{{firsTime}}
</view>
-
<view class="right_time" @click="time2=true">
{{lasTime}}
</view>
</view>
</view>
<view class="top_box" v-if="typeindex==1" style="margin-top: 20rpx;">
<view class="left_text">
车辆编号
</view>
<view class="sear_ipt">
<input type="text"
v-model="searchKeyword"
placeholder="请输入内容"
class="input"
placeholder-style="color:#C7CDD3"
@input="search()">
</view>
</view>
<view class="data_box">
<view class="data_cont " :class="typeindex==0?'act1':''" @click="changeType(0)">
按日期
</view>
<view class="data_cont" :class="typeindex==1?'act1':''" @click="changeType(1)">
按车辆
</view>
</view>
</view>
<view class="cont_box">
<view class="cont_info">
<view class="info_li" style="color:#4C97E7 ;">
已支付0.00
</view>
<view class="info_li" style="color:#4C97E7 ;">
已退款0.00
</view>
</view>
<view class="cont_info">
<view class="info_li" style="color:#4C97E7 ;">
手续费0.00
</view>
<view class="info_li" style="color:#4C97E7 ;">
收入0.00
</view>
</view>
</view>
<view class="info_card" style="margin-top: 20rpx;">
<view class="info_tit">
2024-04-28
</view>
<view class="lines"></view>
<view class="cont">
<view class="info_li">
<view class="half_infoli">
支付金额<span>0.00</span>
</view>
<view class="half_infoli">
已退款<span>0.00</span>
</view>
</view>
<view class="info_li">
<view class="half_infoli">
手续费<span>0.00</span>
</view>
<view class="half_infoli">
收入<span style="color:#4C97E7 ;">0.00</span>
</view>
</view>
</view>
</view>
<u-picker mode="time" v-model="time1" :params="params" @confirm="confirm1"
:default-time='pickertime'></u-picker>
<u-picker mode="time" v-model="time2" :params="params" @confirm="confirm2"
:default-time='pickertime'></u-picker>
</view>
</template>
<script>
export default {
data() {
return {
bgc: {
backgroundColor: "#fff",
},
time1: false,
time2: false,
lasTime: '00-00',
firsTime: '00-00',
params: {
year: true,
month: true,
day: true,
hour: false,
minute: false,
second: false
},
typeindex:0,
}
},
methods: {
confirm1(e) {
console.log(e, 'eeeeeeee');
this.firsTime = e.year + '-' + e.month + '-' + e.day
},
confirm2(e) {
this.lasTime = e.year + '-' + e.month + '-' + e.day
},
changeType(num){
this.typeindex=num
}
}
}
</script>
<style lang="scss">
page {
background-color: #F6F6F6;
}
.page {
width: 750rpx;
.lines{
width: 748rpx;
height: 22rpx;
background: #F6F6F6;
border-radius: 0rpx 0rpx 0rpx 0rpx;
}
.info_card {
background: #FFFFFF;
.info_tit {
display: flex;
flex-wrap: nowrap;
padding: 22rpx 28rpx;
font-weight: 600;
font-size: 32rpx;
color: #3D3D3D;
.money {
margin-left: auto;
font-weight: 500;
font-size: 32rpx;
color: #4C97E7;
}
}
.lines {
width: 750rpx;
height: 2rpx;
border: 2rpx solid #ccc;
}
.cont {
padding: 26rpx 28rpx;
.info_li {
display: flex;
flex-wrap: nowrap;
font-weight: 400;
font-size: 28rpx;
color: #808080;
span {
color: #3D3D3D;
}
line-height: 48rpx;
.half_infoli {
display: flex;
flex-wrap: nowrap;
width: 50%;
font-weight: 400;
font-size: 28rpx;
color: #808080;
span {
color: #3D3D3D;
}
.input{
width: 30%;
}
}
}
}
}
.cont_box {
padding: 14rpx 30rpx;
width: 750rpx;
background: #E2F2FF;
border-radius: 0rpx 0rpx 0rpx 0rpx;
.cont_info {
margin-top: 8rpx;
display: flex;
flex-wrap: nowrap;
.info_li {
width: 50%;
font-weight: 400;
font-size: 28rpx;
color: #3D3D3D;
}
}
}
.data_box {
width: 672rpx;
margin: 36rpx auto;
display: flex;
flex-wrap: nowrap;
align-items: center;
// justify-content: space-between;
.data_cont {
margin-right: 40rpx;
display: flex;
align-items: center;
justify-content: center;
width: 150rpx;
height: 60rpx;
background: #FFFFFF;
box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.07);
border-radius: 10rpx 10rpx 10rpx 10rpx;
font-weight: 400;
font-size: 32rpx;
color: #3D3D3D;
border: 2rpx solid #fff;
}
.act1 {
background: #E2F2FF;
box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.07);
color: #4C97E7;
border: 2rpx solid #4C97E7;
}
}
.top_box {
display: flex;
flex-wrap: nowrap;
align-items: center;
padding: 28rpx 30rpx;
// padding: 20rpx 0;
margin: 0 auto;
width: 672rpx;
height: 100rpx;
background: #FFFFFF;
box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.07);
border-radius: 10rpx 10rpx 10rpx 10rpx;
.left_text {
width: 25%;
font-weight: 400;
font-size: 32rpx;
color: #3D3D3D;
}
.timebox {
width: 75%;
display: flex;
flex-wrap: nowrap;
align-items: center;
margin-left: 34rpx;
.left_time {
text-align: center;
margin-right: 6rpx;
height: 50rpx;
width: 45%;
border: 2rpx solid #ccc;
border-radius: 12rpx;
font-weight: 400;
font-size: 32rpx;
color: #979797;
}
.right_time {
text-align: center;
margin-left: 6rpx;
height: 50rpx;
width: 45%;
border: 2rpx solid #ccc;
border-radius: 12rpx;
font-weight: 400;
font-size: 32rpx;
color: #979797;
}
}
}
}
</style>