第一次上传

This commit is contained in:
Ls
2026-03-09 16:39:03 +08:00
commit 3d9efaf15c
924 changed files with 326227 additions and 0 deletions

View File

@@ -0,0 +1,153 @@
<template>
<view>
<view class="" style=" margin: 25rpx 0; padding: 0 20rpx; display: flex; align-items: center; justify-content: space-between;">
<view @click="changetab(index)" v-for="(item,index) in tag" :key="index"
:class="{active:index!=currentIndex,actived:index==currentIndex}" class="tag"
style=" padding: 14rpx 36rpx; border-radius: 14rpx; ">
{{item}}
</view>
</view>
<view v-if="type==0"class="" style=" margin:20rpx; margin-top: 30rpx; " >
<view class="" style="display: flex; align-items: center; padding: 40rpx 30rpx; margin-top: 20rpx; justify-content: space-between; border-radius: 20rpx; box-shadow: 0 0 10rpx 4rpx #e2e2e2; " >
<view class="">
<view class="" style="display: flex; align-items: center;" >
<img :src="Service.GetMateUrlByImg('/static/dele/dele1.jpg')" style=" border-radius: 10rpx; width: 60rpx; height: 60rpx;" alt="" />
<text style="margin-left: 10rpx;" >星巴克咖啡</text>
</view>
<view class="" style="margin-top: 15rpx; color: #999999; " >
今天 14:30
</view>
</view>
<view class="" style="font-weight: 600; color: #666666;" >
¥-38.00
</view>
</view>
<up-loadmore :status="status" />
</view>
<view v-else class="" style=" margin:20rpx; margin-top: 30rpx; " >
<view class="" v-for="(item,index) in historyList" :key="index" style="display: flex; align-items: center; padding: 40rpx 30rpx; margin-top: 20rpx; justify-content: space-between; border-radius: 20rpx; box-shadow: 0 0 10rpx 4rpx #e2e2e2; " >
<view class="">
<view class="" style="display: flex; align-items: center; gap: 20rpx; " >
<img :src="Service.GetMateUrlByImg(item.merchLogo)" style=" border-radius: 10rpx; width: 110rpx; height: 110rpx;" alt="" />
<view class="">
<view style="font-weight: bold; font-size: 32rpx; " >{{ item.merchName }}</view>
<view class="" style="margin-top: 15rpx; color: #999999; font-size: 26rpx; " >
{{ item.payTime }}
</view>
</view>
</view>
</view>
<view class="" style="font-weight: 600; font-size: 34rpx; " >
-{{ item.amount }}
</view>
</view>
<up-loadmore :status="status" />
</view>
<up-calendar :show="showDate" closeOnClickOverlay='true' :mode="mode" monthNum='5' minDate='2025-12-01' maxDate='2999-12-31' @close="showDate=false" @confirm="confirmDate"></up-calendar>
</view>
</template>
<script setup lang="ts">
import { onShow, onLoad } from "@dcloudio/uni-app";
import { ref } from "vue";
import { Service } from '@/Service/Service'
import { vpOrderService } from '@/Service/vp/vpOrderService'
let currentIndex=ref(0)
let tag = ref([
'全部',
'今日',
'本月',
'自定义'
])
// 日历管理
const showDate = ref(false);
const mode = ref('range');
let time=ref('')
let page=ref(1)
let status=ref('nomore')
let historyList=ref<Array<any>>([])
let type=ref(null)
onLoad((data:any) => {
type.value=data.type
if(data.type==0){
uni.setNavigationBarTitle({
title:'交易明细'
})
}else{
uni.setNavigationBarTitle({
title:'交易记录'
})
}
getData()
});
onShow(() => {
});
const getData=()=>{
status.value='Loadmore'
page.value=1
historyList.value=[]
getList()
}
const getList=()=>{
if(status.value=='loading' || status.value=='loadmore' ){
return
}
status.value='loading'
vpOrderService.GetUserOrderList(String(currentIndex.value)==='3'?time.value:(String(currentIndex.value)==='0'?'':String(currentIndex.value)),page.value).then(res=>{
if(res.code==0){
historyList.value=[...historyList.value,...res.data.list]
status.value=res.data.list.length==10?'loadmore':'nomore'
page.value++
}else{
Service.Msg(res.msg)
}
})
}
const changetab=(e:number)=>{
if(e==3){
showDate.value=true
return
}
currentIndex.value=e
getData()
}
const confirmDate = (e) => {
currentIndex.value=3
time.value=e[0]+'_'+e[e.length-1]
getData()
showDate.value=false
};
</script>
<style lang="scss">
.active{
background-color: #F3F4F6;
color: #4B5563;
}
.actived{
background-color: #FF6B35;
color: #fff;
}
.tag{
display: flex;
align-items: center;
justify-content: center;
width: fit-content;
font-size: 28rpx;
}
</style>

View File

@@ -0,0 +1,78 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
@import 'uview-plus/theme.scss';
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
*/
/* 颜色变量 */
/* 行为相关颜色 */
$uni-color-primary: #007aff;
$uni-color-success: #4cd964;
$uni-color-warning: #f0ad4e;
$uni-color-error: #dd524d;
/* 文字基本颜色 */
$uni-text-color: #333; // 基本色
$uni-text-color-inverse: #fff; // 反色
$uni-text-color-grey: #999; // 辅助灰色,如加载更多的提示信息
$uni-text-color-placeholder: #808080;
$uni-text-color-disable: #c0c0c0;
/* 背景颜色 */
$uni-bg-color: #fff;
$uni-bg-color-grey: #f8f8f8;
$uni-bg-color-hover: #f1f1f1; // 点击状态颜色
$uni-bg-color-mask: rgba(0, 0, 0, 0.4); // 遮罩颜色
/* 边框颜色 */
$uni-border-color: #c8c7cc;
/* 尺寸变量 */
/* 文字尺寸 */
$uni-font-size-sm: 12px;
$uni-font-size-base: 14px;
$uni-font-size-lg: 16;
/* 图片尺寸 */
$uni-img-size-sm: 20px;
$uni-img-size-base: 26px;
$uni-img-size-lg: 40px;
/* Border Radius */
$uni-border-radius-sm: 2px;
$uni-border-radius-base: 3px;
$uni-border-radius-lg: 6px;
$uni-border-radius-circle: 50%;
/* 水平间距 */
$uni-spacing-row-sm: 5px;
$uni-spacing-row-base: 10px;
$uni-spacing-row-lg: 15px;
/* 垂直间距 */
$uni-spacing-col-sm: 4px;
$uni-spacing-col-base: 8px;
$uni-spacing-col-lg: 12px;
/* 透明度 */
$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
/* 文章场景相关 */
$uni-color-title: #2c405a; // 文章标题颜色
$uni-font-size-title: 20px;
$uni-color-subtitle: #555; // 二级标题颜色
$uni-font-size-subtitle: 18px;
$uni-color-paragraph: #3f536e; // 文章段落颜色
$uni-font-size-paragraph: 15px;