|
@@ -1,4 +1,5 @@
|
1
|
1
|
import 'package:farmer_client/pages/orderInfo/widgets/star.dart';
|
|
2
|
+import 'package:farmer_client/services/pay.dart';
|
2
|
3
|
import 'package:farmer_client/widgets/DefaultButton.dart';
|
3
|
4
|
import 'package:ff_stars/ff_stars.dart';
|
4
|
5
|
import 'package:flutter/material.dart';
|
|
@@ -7,6 +8,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart';
|
7
|
8
|
import 'package:fluttertoast/fluttertoast.dart';
|
8
|
9
|
import 'package:get/get.dart';
|
9
|
10
|
import 'package:farmer_client/widgets/Modal.dart' as modal;
|
|
11
|
+import 'package:fluwx/fluwx.dart' as fluwx;
|
10
|
12
|
|
11
|
13
|
import '../../models/entities/OrderInfoModel.dart';
|
12
|
14
|
import '../../services/orderAPI.dart';
|
|
@@ -28,13 +30,13 @@ class OrderPageInfo extends BasicPage {
|
28
|
30
|
final evalStars = Rx<num>(-1);
|
29
|
31
|
|
30
|
32
|
// orderStates
|
31
|
|
-
|
32
|
33
|
@override
|
33
|
34
|
void beforeShow() {
|
34
|
35
|
// TODO: implement beforeShow
|
35
|
36
|
super.beforeShow();
|
36
|
37
|
if (Get.arguments['id'] != null) {
|
37
|
38
|
id(Get.arguments['id']);
|
|
39
|
+ print(Get.arguments);
|
38
|
40
|
|
39
|
41
|
orderStateText(Get.arguments['title']);
|
40
|
42
|
orderStateColor(Get.arguments['styleColor']);
|
|
@@ -251,6 +253,7 @@ class _BottomWidget extends StatelessWidget {
|
251
|
253
|
|
252
|
254
|
_BottomWidget({Key? key, required this.id}) : super(key: key);
|
253
|
255
|
|
|
256
|
+
|
254
|
257
|
void _orderDeletels() {
|
255
|
258
|
modal.showDialog(
|
256
|
259
|
title: '提示',
|
|
@@ -266,7 +269,76 @@ class _BottomWidget extends StatelessWidget {
|
266
|
269
|
})
|
267
|
270
|
});
|
268
|
271
|
}
|
|
272
|
+ Map result={
|
|
273
|
+ 'appid':'wx0969b05b5393ae17',
|
|
274
|
+ 'partnerid':'122asdas5551222',
|
|
275
|
+ 'prepayid':'wsserrg996ae17',
|
|
276
|
+ 'package':'hkrllfl,g://sdsadaa',
|
|
277
|
+ 'noncestr':'1221222',
|
|
278
|
+ 'timestamp':'e55s5a6a6s',
|
|
279
|
+ 'sign':'92552d22f541g2f5sd',
|
|
280
|
+ };
|
|
281
|
+
|
|
282
|
+Future<void> payMoney (String payType) async {
|
|
283
|
+ if(payType=='wxPay'){
|
|
284
|
+ final isInstall=await fluwx.isWeChatInstalled;
|
|
285
|
+ if(!isInstall){
|
|
286
|
+ EasyLoading.showError('未安装微信');
|
|
287
|
+ print('isInstall--------$isInstall');
|
|
288
|
+ return;
|
|
289
|
+ }
|
|
290
|
+ createOrder(id, "wx").then((value) {
|
|
291
|
+ print('--------------微信支付-----------------');
|
|
292
|
+ print('result--------$value');
|
|
293
|
+ print('-------------------------------');
|
|
294
|
+ print("appid--------${value['appid']}");
|
|
295
|
+ print("partnerId--------${value['partnerId']}");
|
|
296
|
+ print("prepayId--------${value['prepayId']}");
|
|
297
|
+ print("packageValue--------${value['packageValue']}");
|
|
298
|
+ print("noncestr--------${value['noncestr']}");
|
|
299
|
+ print("timestamp--------${value['timestamp']}");
|
|
300
|
+ print("sign--------${value['sign']}");
|
|
301
|
+ fluwx.payWithWeChat(
|
|
302
|
+ appId: value['appid'].toString(),
|
|
303
|
+ partnerId: value['partnerId'].toString(),
|
|
304
|
+ prepayId: value['prepayId'].toString(),
|
|
305
|
+ packageValue: value['packageValue'].toString(),
|
|
306
|
+ nonceStr: value['noncestr'].toString(),
|
|
307
|
+ timeStamp: int.parse(value['timestamp'].toString()),
|
|
308
|
+ sign: value['sign'].toString(),
|
|
309
|
+ ).then((res) {
|
|
310
|
+ print("payWithWeChat--------${res}");
|
|
311
|
+ })
|
|
312
|
+ .catchError((onError){
|
|
313
|
+ print("payWithWeChat错误--------${onError}");
|
|
314
|
+ })
|
|
315
|
+ ;
|
|
316
|
+
|
|
317
|
+ });
|
|
318
|
+
|
|
319
|
+// 监听支付结果
|
|
320
|
+ fluwx.weChatResponseEventHandler.listen((event) async {
|
|
321
|
+ print(event.errCode);
|
|
322
|
+ // 支付成功
|
|
323
|
+ if (event.errCode == 0) {
|
|
324
|
+ EasyLoading.showSuccess('支付成功');
|
|
325
|
+
|
|
326
|
+ }else{
|
|
327
|
+ EasyLoading.showError('支付失败');
|
|
328
|
+
|
|
329
|
+ }
|
|
330
|
+ // 关闭弹窗
|
|
331
|
+ });
|
269
|
332
|
|
|
333
|
+
|
|
334
|
+ return;
|
|
335
|
+ }else if(payType=='aliPay'){
|
|
336
|
+ print('--------------支付宝支付-----------------');
|
|
337
|
+
|
|
338
|
+ }
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+}
|
270
|
342
|
//显示底部弹框的功能
|
271
|
343
|
void showBottomSheet(context) {
|
272
|
344
|
//用于在底部打开弹框的效果
|
|
@@ -293,6 +365,9 @@ class _BottomWidget extends StatelessWidget {
|
293
|
365
|
Padding(
|
294
|
366
|
padding: EdgeInsets.fromLTRB(15.w, 0, 15.w, 0),
|
295
|
367
|
child: ListTile(
|
|
368
|
+ onTap: (){
|
|
369
|
+ payMoney('aliPay');
|
|
370
|
+ },
|
296
|
371
|
contentPadding: EdgeInsets.symmetric(horizontal: 0.0),
|
297
|
372
|
// 这边使用了contentPadding
|
298
|
373
|
leading: Image(
|
|
@@ -316,7 +391,9 @@ class _BottomWidget extends StatelessWidget {
|
316
|
391
|
Padding(
|
317
|
392
|
padding: EdgeInsets.fromLTRB(15.w, 0, 15.w, 0),
|
318
|
393
|
child: ListTile(
|
319
|
|
- onTap: () {},
|
|
394
|
+ onTap: () {
|
|
395
|
+ payMoney('wxPay');
|
|
396
|
+ },
|
320
|
397
|
contentPadding: EdgeInsets.symmetric(horizontal: 0.0),
|
321
|
398
|
// 这边使用了contentPadding
|
322
|
399
|
leading: Image(
|