提交 924a2c52 authored 作者: maodou's avatar maodou

1:订单退款详情优化

2:订单评价
上级 d9047aec
......@@ -13,6 +13,7 @@ import 'package:flutter_slidable/flutter_slidable.dart';
import 'package:fluwx/fluwx.dart';
import 'package:get/get.dart';
import 'package:go_router/go_router.dart';
import 'package:tobias/tobias.dart';
// import 'package:tobias/tobias.dart';
import '../../models/index.dart';
......
part of order_evaluate;
class OrderEvaluatePage extends StatefulWidget {
const OrderEvaluatePage({Key? key}) : super(key: key);
@override
State<OrderEvaluatePage> createState() => _OrderEvaluatePageState();
}
class _OrderEvaluatePageState extends State<OrderEvaluatePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
centerTitle: true,
title: const Text('订单评价'),
),
body: Column(
children: [
Container(
margin: EdgeInsets.all(10.w),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(8.w),
color: const Color(0xFFF9F9F9),
boxShadow: [
BoxShadow(
color: const Color(0xFFC7C7C7).withOpacity(0.5),
offset: Offset(3.w, 0),
blurRadius: 7.w,
spreadRadius: 0.w,
),
],
),
child: ClipRRect(
borderRadius: BorderRadius.circular(8.w),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
// 图书容器
Container(
color: Colours.cF8,
padding: EdgeInsets.symmetric(horizontal: 11.w,vertical: 12.w),
child: Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Container(
width: 71.w,
height: 86.w,
color: Colors.cyan,
),
Gaps.hGaps10,
Text('一想到还有95%的问题留给人类,我就放',style: TextStyle(fontSize: 13.w,height: 1.5,fontWeight: Fonts.medium,color: Colours.c3),maxLines: 2,overflow: TextOverflow.ellipsis,)
],
),
),
// 评价容器
Container(
padding: EdgeInsets.symmetric(vertical: 15.w),
width: double.infinity,
height: 160.w,
color: Colors.white,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Container(
padding: EdgeInsets.only(left: 10.w),
child: const Text('评分'),
),
Gaps.hGaps20,
AbsorbPointer(
absorbing: false,
child: CustomRating(
max: 5,
score:0 ,
star: Star(
fat: 0.5,
progress: 7,
fillColor: AppTheme.primary,
size: 16.w,
emptyColor: Colours.cE2,
), onRating: (double ) {},
),
),
],
),
Container(
// color: Colors.red,
child: CustomInput(
decoration: InputDecoration(
focusedBorder: InputBorder.none,
border: InputBorder.none,
enabledBorder: InputBorder.none,
errorBorder: InputBorder.none,
fillColor:Colors.white,
hintStyle: TextStyle(fontSize: 14.w,height: 1.5,color: Colours.c6)
),
maxLines: 5,
hintText: '请简要描述',
),
),
],
),
),
],
),
),
),
SizedBox(height: 50.w,),
Container(
margin: EdgeInsets.symmetric(horizontal: 10.w),
child: CustomGradientButton(
text: '提交评价',
isEnabled: false,
onPressed: () {
print('11111111111111111');
},
),
)
],
),
);
}
}
part of user_order_evaluate;
/// 等待付款订单
class UserOrderEvaluateController extends GetxController {
// 已完成订单
OrderCompletedInfoModel orderCompletedInfo = OrderCompletedInfoModel();
OrderListModel orderListModel = OrderListModel();
// 应付款、订单编号等
List<OrderCompletedModel> orderAwaitings = [];
@override
void onReady() {
getOrderInfo();
super.onReady();
}
/// 修改用用户信息
void cancelPay() async {
final result = await MineAPI.cancelPay(ordersnum: orderListModel.ordersnum??'');
if (result) {
Toast.show('取消成功');
update();
}
}
/// 获取订单信息
void getOrderInfo() async {
// orderCompletedInfo = await MineAPI.userInfo();
orderCompletedInfo = OrderCompletedInfoModel(id:1,price:'88.00',totalPay: '58.00',favorable: '5.00',orderId: 'ZJ2023122163728437',payWay: '微信支付',payTime: '2023-12-21 01:25:24',orderTime: '2023-12-21 01:25:15');
orderAwaitings = [
OrderCompletedModel(name: '订单编号',value: orderCompletedInfo.orderId.toString()),
OrderCompletedModel(name: '支付方式',value: orderCompletedInfo.payWay.toString()),
OrderCompletedModel(name: '支付时间',value: orderCompletedInfo.payTime.toString()),
];
update();
}
}
library order_evaluate;
library user_order_evaluate;
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_star/custom_rating.dart';
import 'package:flutter_star/star.dart';
import 'package:get/get_state_manager/src/simple/get_controllers.dart';
import 'package:get/get_state_manager/src/simple/get_state.dart';
import '../../apis/index.dart';
import '../../models/index.dart';
import '../../theme.dart';
import '../../utils/index.dart';
import '../../widgets/index.dart';
part 'view.dart';
\ No newline at end of file
part 'view.dart';
part 'controller.dart';
\ No newline at end of file
part of user_order_evaluate;
/// 用户订单评价
class UserOrderEvaluatePage extends StatefulWidget {
const UserOrderEvaluatePage({Key? key}) : super(key: key);
@override
State<UserOrderEvaluatePage> createState() => _UserOrderEvaluatePageState();
}
class _UserOrderEvaluatePageState extends State<UserOrderEvaluatePage> {
@override
Widget build(BuildContext context) {
return GetBuilder<UserOrderEvaluateController>(
init: UserOrderEvaluateController(),
builder: (controller) =>
Scaffold(
appBar: AppBar(
centerTitle: true,
title: const Text('订单评价'),
),
body: Column(
children: [
Expanded(
child: SingleChildScrollView(
child: Column(
children: [
ListView.builder(
physics: const NeverScrollableScrollPhysics(),
shrinkWrap:true,
itemBuilder: (BuildContext context, int index){
return listItem();
},
itemCount: 3,
),
],
),
),
),
SizedBox(height: 26.w,),
Container(
margin: EdgeInsets.symmetric(horizontal: 10.w),
child: CustomGradientButton(
text: '提交评价',
isEnabled: false,
onPressed: () {
print('11111111111111111');
},
),
),
SizedBox(height: 41.w,)
],
),
));
}
Widget listItem(){
return Container(
margin: EdgeInsets.only(left:10.w,top:12.w,bottom:12.w,right: 23.5.w),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(8.w),
color: const Color(0xFFF9F9F9),
boxShadow: [
BoxShadow(
color: const Color(0xFFC7C7C7).withOpacity(0.5),
offset: Offset(3.w, 0),
blurRadius: 7.w,
spreadRadius: 0.w,
),
],
),
child: ClipRRect(
borderRadius: BorderRadius.circular(8.w),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
// 图书容器
Container(
color: Colours.cF8,
padding: EdgeInsets.symmetric(horizontal: 11.w,vertical: 12.w),
child: Row(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Container(
padding: EdgeInsets.all(2.w),
height: 88.w,
width: 73,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(4.w),
color: Colors.white,
boxShadow: [
BoxShadow(
color: const Color(0xFF707070).withOpacity(0.5),
offset: const Offset(0, 0),
blurRadius: 4.5.w,
spreadRadius: 0.w,
),
],
),
child: Image.network(
'http://zxts-book-file.zijingebook.com/2024-01/29/b91194564969b9151fa382807977282acdffa22d.jpg',
// 用实际图片链接替换
fit: BoxFit.cover,
),
),
Gaps.hGaps10,
Expanded(
child: Text('一想到还有95%的问题留给人类,我就放ListView一想到还有95%的问题留给人类,我就放',style: TextStyle(fontSize: 13.w,height: 1.5,fontWeight: Fonts.medium,color: Colours.c3),maxLines: 2,overflow: TextOverflow.ellipsis,),
),
],
),
),
// 评价容器
Container(
padding: EdgeInsets.only(top: 1.w,),
width: double.infinity,
height: 160.w,
color: Colors.white,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Container(
padding: EdgeInsets.only(left: 10.w),
child: const Text('评分'),
),
Gaps.hGaps20,
AbsorbPointer(
absorbing: false,
child: CustomRating(
max: 5,
score:0 ,
star: Star(
fat: 0.5,
progress: 7,
fillColor: AppTheme.primary,
size: 16.w,
emptyColor: Colours.cE2,
), onRating: (double ) {},
),
),
],
),
Expanded(
// color: Colors.red,
child: CustomInput(
decoration: InputDecoration(
focusedBorder: InputBorder.none,
border: InputBorder.none,
enabledBorder: InputBorder.none,
errorBorder: InputBorder.none,
fillColor:Colors.white,
hintStyle: TextStyle(fontSize: 14.w,height: 1.5,color: Colours.c6)
),
maxLines: 5,
hintText: '请简要描述',
),
),
],
),
),
],
),
),
);
}
}
......@@ -12,6 +12,7 @@ class RefundedDetailsPage extends StatefulWidget {
class _RefundedDetailsState extends State<RefundedDetailsPage> {
@override
Widget build(BuildContext context) {
bool a = true;
return Column(
mainAxisSize: MainAxisSize.min,
children: [
......@@ -65,7 +66,8 @@ class _RefundedDetailsState extends State<RefundedDetailsPage> {
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text('优惠券抵扣',style: TextStyle(fontSize: 13.w,color: Colours.c9,),),
Text('减 ¥199.80',style: TextStyle(fontSize: 13.w,color: Colours.cAB1941,fontWeight: Fonts.medium),),
buildItem('188.80', false
),
],
),
),
......@@ -75,7 +77,7 @@ class _RefundedDetailsState extends State<RefundedDetailsPage> {
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text('积分抵扣',style: TextStyle(fontSize: 13.w,color: Colours.c9,),),
Text('减 ¥199.80',style: TextStyle(fontSize: 13.w,color: Colours.cAB1941,fontWeight: Fonts.medium),),
buildItem('0.00', true),
],
),
),
......@@ -83,4 +85,11 @@ class _RefundedDetailsState extends State<RefundedDetailsPage> {
);
}
Widget buildItem(String show,bool isZero){
if(isZero){
return Text('$show',style: TextStyle(fontSize: 13.w,color: Colours.c3,),);
} else{
return Text('减 ¥$show',style: TextStyle(fontSize: 13.w,color: Colours.cAB1941,fontWeight: Fonts.medium),);
}
}
}
......@@ -44,7 +44,7 @@ import 'package:flutter_book/pages/web/index.dart';
import 'package:go_router/go_router.dart';
import '../models/index.dart';
import '../pages/order_evaluate/index.dart';
import '../pages/user_order_evaluate/index.dart';
import '../pages/pay_coupon/index.dart';
import '../pages/user_about/index.dart';
import '../pages/user_order/index.dart';
......
......@@ -477,7 +477,7 @@ abstract class Routes {
pageBuilder: (context, state) =>CupertinoPage(
name: state.uri.toString(),
key: state.pageKey,
child: const OrderEvaluatePage()
child: const UserOrderEvaluatePage()
)
),
GoRoute( // 帮助中心
......
......@@ -195,7 +195,7 @@ packages:
description:
name: flutter_inapp_purchase
sha256: d67544e703439feefe91cab9cb4920cffc0f1576f7ce51a78e3a0a3c5f7d3f1e
url: "https://pub.flutter-io.cn"
url: "https://pub.dev"
source: hosted
version: "5.6.1"
flutter_inappwebview:
......@@ -794,6 +794,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.5.1"
tobias:
dependency: "direct main"
description:
name: tobias
sha256: "16cad7d60e910fa45498dacb852f393b065d4d0fce7feff4db43159d745c7c6e"
url: "https://pub.dev"
source: hosted
version: "3.3.0"
typed_data:
dependency: transitive
description:
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论