huxiaoqiang il y a 4 ans
Parent
commit
9649ed1d90

+ 24 - 33
lib/main.dart

@@ -101,24 +101,6 @@ Future<void> main() async {
     }
     selectNotificationSubject.add(payload);
   });
-
-  /// STEP 1. Create catcher configuration.
-  /// Debug configuration with dialog report mode and console handler. It will show dialog and once user accepts it, error will be shown   /// in console.
-
-  // CatcherOptions debugOptions = CatcherOptions(SilentReportMode(), [
-  //   EmailManualHandler(["1033661004@qq.com"]),
-  // ]);
-  //
-  // /// Release configuration. Same as above, but once user accepts dialog, user will be prompted to send email with crash to support.
-  // CatcherOptions releaseOptions = CatcherOptions(DialogReportMode(), [
-  //   EmailManualHandler(["1033661004@qq.com"])
-  // ]);
-
-  /// STEP 2. Pass your root widget (MyApp) along with Catcher configuration:
-  // Catcher(
-  //     rootWidget: MyApp(),
-  //     debugConfig: debugOptions,
-  //     releaseConfig: releaseOptions);
   runApp(MyApp());
 }
 
@@ -361,6 +343,9 @@ class MyApp extends StatelessWidget with WidgetsBindingObserver {
     return items;
   }
 
+
+  bool saving = false;
+
   //获取用户所在店铺
   void getShop(List<OrderInfo2> order) {
     shopIndex = 0;
@@ -498,21 +483,27 @@ class MyApp extends StatelessWidget with WidgetsBindingObserver {
                       Container(
                         child: GestureDetector(
                           onTap: () {
-                            EventBus().on('saveOrder', (arg) {
-                              amountCompleted++;
-                              if (amountCompleted == order.length) {
-                                amountCompleted = 0;
-                                EasyLoading.dismiss();
-                                showToast('发送成功');
-                                clipboardT = '';
-                                EventBus().off('saveOrder');
-                                PopUpQueue().onShow = false;
-                                PopUpQueue().showNext();
-                              }
-                            });
-                            order.forEach((element) {
-                              sendOrder(element);
-                            });
+                            if(saving){
+                              return;
+                            }else{
+                              saving  = true;
+                              EventBus().on('saveOrder', (arg) {
+                                amountCompleted++;
+                                if (amountCompleted == order.length) {
+                                  amountCompleted = 0;
+                                  EasyLoading.dismiss();
+                                  showToast('发送成功');
+                                  clipboardT = '';
+                                  saving = false;
+                                  EventBus().off('saveOrder');
+                                  PopUpQueue().onShow = false;
+                                  PopUpQueue().showNext();
+                                }
+                              });
+                              order.forEach((element) {
+                                sendOrder(element);
+                              });
+                            }
                           },
                           behavior: HitTestBehavior.translucent,
                           child: Container(

+ 37 - 24
lib/my_tools/const.dart

@@ -122,43 +122,56 @@ aliPayResultStatus(int code) {
 }
 
 //资金流水用途类型
-int flowTypeRefund = -1; //退款
-int flowTypeOrderCommodity = 1; //商品订单
-int flowTypeOrderAnnualFee = 2; //平台年费订单
-int flowTypeOrderVirtualProduct = 3; //虚拟物品订单
-int flowTypeOrderThirdPlatform = 4; //第三方平台订单
-int flowTypeOrderOfflineTransfer = 5; //线下付款订单
-int flowTypeRedPacket = 10; //红包
-int flowTypeWithdraw = 20; //提现
-int flowTypeShopCommission = 30; //店铺佣金
-int flowTypePlatformFee = 40; //平台收费
-int flowTypePlatformFine = 41; //平台罚款
-int flowTypeBonus = 99; //平台分红
+const int flowTypeRefund = -1; //退款
+const int flowTypeOrderCommodity = 1; //商品订单
+const int flowTypeOrderAnnualFee = 2; //平台年费订单
+const int flowTypeOrderVirtualProduct = 3; //虚拟物品订单
+const int flowTypeOrderThirdPlatform = 4; //第三方平台订单
+const int flowTypeOrderOfflineTransfer = 5; //线下付款订单
+const int flowTypeOrderAdvertise = 6; //平台广告订单
+const int flowTypeOrderGoldrenShopUID = 7; //店铺靓号订单
+const int flowTypeRedPacket = 10; //红包
+const int flowTypeWithdraw = 20; //提现
+const int flowTypeShopCommission = 30; //店铺佣金
+const int flowTypePlatformFee = 40; //平台收费
+const int flowTypePlatformFine = 41; //平台罚款
+const int flowTypePlatformRecommendCommission = 42; //店铺推荐佣金佣金
+const int flowTypePlatformRefund = 43; //平台退偿积分
+const int flowTypeBonus = 99; //平台分红
+
 flowType(int type) {
   switch (type) {
-    case -1:
+    case flowTypeRefund:
       return '退款';
-    case 1:
+    case flowTypeOrderCommodity:
       return '商品订单';
-    case 2:
+    case flowTypeOrderAnnualFee:
       return '平台年费订单';
-    case 3:
+    case flowTypeOrderVirtualProduct:
       return '虚拟物品订单';
-    case 4:
+    case flowTypeOrderThirdPlatform:
       return '第三方平台订单';
-    case 5:
+    case flowTypeOrderOfflineTransfer:
       return '线下付款订单';
-    case 10:
+    case flowTypeOrderAdvertise:
+      return '平台广告订单';
+    case flowTypeOrderGoldrenShopUID:
+      return '店铺靓号订单';
+    case flowTypeRedPacket:
       return '红包';
-    case 20:
+    case flowTypeWithdraw:
       return '提现';
-    case 30:
+    case flowTypeShopCommission:
       return '货帮佣金';
-    case 40:
+    case flowTypePlatformFee:
       return '平台收费';
-    case 41:
+    case flowTypePlatformFine:
       return '平台罚款';
-    case 99:
+    case flowTypePlatformRecommendCommission:
+      return '店铺推荐佣金';
+    case flowTypePlatformRefund:
+      return '平台退偿积分';
+    case flowTypeBonus:
       return '平台分红';
     default:
       return '';

+ 376 - 112
lib/paegs/gang_page/gang_in_page/gang_in_page.dart

@@ -2,11 +2,13 @@ import 'dart:async';
 import 'dart:convert';
 import 'dart:math';
 
+import 'package:azlistview/azlistview.dart';
 import 'package:bbyyy/beans/goods_bean_entity.dart';
 import 'package:bbyyy/beans/my_shop_bean_entity.dart';
 import 'package:bbyyy/beans/new_order_bean_entity.dart';
 import 'package:bbyyy/beans/smart_order_bean_entity.dart';
 import 'package:bbyyy/beans/store_bean_entity.dart';
+import 'package:bbyyy/beans/user_vp_bean_entity.dart';
 import 'package:bbyyy/https/MyDio.dart';
 import 'package:bbyyy/https/url.dart';
 import 'package:bbyyy/my_tools/const.dart';
@@ -20,6 +22,8 @@ import 'package:bbyyy/my_tools/pop_up_queue.dart';
 import 'package:bbyyy/paegs/chat_page/chat_page.dart';
 import 'package:bbyyy/paegs/gang_page/gang_in_page/gang_information_page/add_member_page/add_member_page.dart';
 import 'package:bbyyy/paegs/gang_page/gang_in_page/pay_to_the_helper_page/pay_to_the_helper_page.dart';
+import 'package:bbyyy/paegs/mine_page/privacy_protection_props_page/privacy_protection_props_page.dart';
+import 'package:bbyyy/paegs/other_people_s_turnover_page/other_people_s_turnover_page.dart';
 import 'package:bbyyy/paegs/pay_page/order_information_page.dart';
 import 'package:flutter/cupertino.dart';
 import 'package:flutter/material.dart';
@@ -29,10 +33,12 @@ import 'package:pull_to_refresh/pull_to_refresh.dart';
 import 'package:url_launcher/url_launcher.dart';
 
 import 'gang_information_page/gang_information_page.dart';
+import 'gang_information_page/member_list_page/member_details_page.dart';
 import 'initiate_collection_page/initiate_collection_page.dart';
 import 'scan_page/scan_page.dart';
+
 class GangInPage extends StatefulWidget {
- MyShopBeanDataData data;
+  MyShopBeanDataData data;
   NewOrderBeanContent order;
 
   GangInPage(this.data, this.order);
@@ -94,12 +100,12 @@ class _GangInPageState extends State<GangInPage> {
         children: [
           MyViews().myAppBar(widget.data.shopName, context, [
             Visibility(
-              visible: MyCookie().getUID()==widget.data.ownerUid,
+              visible: MyCookie().getUID() == widget.data.ownerUid,
               child: IconButton(
                   icon: Icon(Icons.qr_code_scanner),
                   onPressed: () async {
-                    MyTools().toPage(context, ScanPage(), (then){
-                      if(then is String){
+                    MyTools().toPage(context, ScanPage(), (then) {
+                      if (then is String) {
                         if (then.isNotEmpty &&
                             then != null &&
                             then.length == 8) {
@@ -108,14 +114,19 @@ class _GangInPageState extends State<GangInPage> {
                             store.ownerUid = widget.data.ownerUid;
                             store.ownerName = widget.data.ownerName;
                             store.uid = widget.data.shopUid;
-                            MyTools().toPage(context, AddMemberPage(store: store,qrUID: then,), (then){});
+                            MyTools().toPage(
+                                context,
+                                AddMemberPage(
+                                  store: store,
+                                  qrUID: then,
+                                ),
+                                (then) {});
                             MyTools().hideKeyboard(context);
                             controller.requestRefresh();
                           });
                         }
                       }
                     });
-
                   }),
             ),
             Visibility(
@@ -131,7 +142,6 @@ class _GangInPageState extends State<GangInPage> {
                     });
                   }),
             ),
-
           ]),
           Container(
             color: MyColors.cF7F7F7,
@@ -472,108 +482,158 @@ class _GangInPageState extends State<GangInPage> {
               color: Colors.white,
               child: Row(
                 children: [
-                  GestureDetector(
-                    onTap: () {
-                      setState(() {
-                        selectedIndex = 0;
-                        controller.requestRefresh();
-                      });
-                    },
-                    behavior: HitTestBehavior.translucent,
-                    child: Padding(
-                      padding: EdgeInsets.only(left: 10, right: 10),
-                      child: Column(
-                        children: [
-                          Text(
-                            '货帮商品',
-                            style: TextStyle(
-                                color: selectedIndex == 0
-                                    ? MyColors.cFF4233
-                                    : MyColors.c666666,
-                                fontSize: 15),
-                          ),
-                          Container(
-                            height: 10,
-                            child: Visibility(
-                              child: SvgPicture.asset('images/svg/tab.svg'),
-                              visible: selectedIndex == 0,
+                  Expanded(
+                    flex: 1,
+                    child: GestureDetector(
+                      onTap: () {
+                        setState(() {
+                          selectedIndex = 0;
+                          controller.requestRefresh();
+                        });
+                      },
+                      behavior: HitTestBehavior.translucent,
+                      child: Padding(
+                        padding: EdgeInsets.only(left: 10, right: 10),
+                        child: Column(
+                          children: [
+                            Text(
+                              '货帮商品',
+                              style: TextStyle(
+                                  color: selectedIndex == 0
+                                      ? MyColors.cFF4233
+                                      : MyColors.c666666,
+                                  fontSize: 15),
                             ),
-                          )
-                        ],
-                        mainAxisAlignment: MainAxisAlignment.end,
+                            Container(
+                              height: 10,
+                              child: Visibility(
+                                child: SvgPicture.asset('images/svg/tab.svg'),
+                                visible: selectedIndex == 0,
+                              ),
+                            )
+                          ],
+                          mainAxisAlignment: MainAxisAlignment.end,
+                        ),
                       ),
                     ),
                   ),
-                  GestureDetector(
-                    onTap: () {
-                      setState(() {
-                        selectedIndex = 1;
-                        controller.requestRefresh();
-                      });
-                    },
-                    behavior: HitTestBehavior.translucent,
-                    child: Padding(
-                      padding: EdgeInsets.only(left: 10, right: 10),
-                      child: Column(
-                        children: [
-                          Text(
-                            widget.data.ownerUid == MyCookie().getUID()
-                                ? '未付订单'
-                                : '未收订单',
-                            style: TextStyle(
-                                color: selectedIndex == 1
-                                    ? MyColors.cFF4233
-                                    : MyColors.c666666,
-                                fontSize: 15),
-                          ),
-                          Container(
-                            height: 10,
-                            child: Visibility(
-                              child: SvgPicture.asset('images/svg/tab.svg'),
-                              visible: selectedIndex == 1,
+                  Expanded(
+                    flex: 1,
+                    child: GestureDetector(
+                      onTap: () {
+                        setState(() {
+                          selectedIndex = 1;
+                          controller.requestRefresh();
+                        });
+                      },
+                      behavior: HitTestBehavior.translucent,
+                      child: Padding(
+                        padding: EdgeInsets.only(left: 10, right: 10),
+                        child: Column(
+                          children: [
+                            Text(
+                              widget.data.ownerUid == MyCookie().getUID()
+                                  ? '未付订单'
+                                  : '未收订单',
+                              style: TextStyle(
+                                  color: selectedIndex == 1
+                                      ? MyColors.cFF4233
+                                      : MyColors.c666666,
+                                  fontSize: 15),
                             ),
-                          )
-                        ],
-                        mainAxisAlignment: MainAxisAlignment.end,
+                            Container(
+                              height: 10,
+                              child: Visibility(
+                                child: SvgPicture.asset('images/svg/tab.svg'),
+                                visible: selectedIndex == 1,
+                              ),
+                            )
+                          ],
+                          mainAxisAlignment: MainAxisAlignment.end,
+                        ),
                       ),
                     ),
                   ),
-                  GestureDetector(
-                    onTap: () {
-                      setState(() {
-                        selectedIndex = 2;
-                        controller.requestRefresh();
-                      });
-                    },
-                    behavior: HitTestBehavior.translucent,
-                    child: Padding(
-                      padding: EdgeInsets.only(left: 10, right: 10),
-                      child: Column(
-                        children: [
-                          Text(
-                            widget.data.ownerUid == MyCookie().getUID()
-                                ? '已付订单'
-                                : '未付订单',
-                            style: TextStyle(
-                                color: selectedIndex == 2
-                                    ? MyColors.cFF4233
-                                    : MyColors.c666666,
-                                fontSize: 15),
-                          ),
-                          Container(
-                            height: 10,
-                            child: Visibility(
-                              child: SvgPicture.asset('images/svg/tab.svg'),
-                              visible: selectedIndex == 2,
+                  Expanded(
+                    flex: 1,
+                    child: GestureDetector(
+                      onTap: () {
+                        setState(() {
+                          selectedIndex = 2;
+                          controller.requestRefresh();
+                        });
+                      },
+                      behavior: HitTestBehavior.translucent,
+                      child: Padding(
+                        padding: EdgeInsets.only(left: 10, right: 10),
+                        child: Column(
+                          children: [
+                            Text(
+                              widget.data.ownerUid == MyCookie().getUID()
+                                  ? '已付订单'
+                                  : '未付订单',
+                              style: TextStyle(
+                                  color: selectedIndex == 2
+                                      ? MyColors.cFF4233
+                                      : MyColors.c666666,
+                                  fontSize: 15),
                             ),
-                          )
-                        ],
-                        mainAxisAlignment: MainAxisAlignment.end,
+                            Container(
+                              height: 10,
+                              child: Visibility(
+                                child: SvgPicture.asset('images/svg/tab.svg'),
+                                visible: selectedIndex == 2,
+                              ),
+                            )
+                          ],
+                          mainAxisAlignment: MainAxisAlignment.end,
+                        ),
+                      ),
+                    ),
+                  ),
+                  Expanded(
+                    flex: MyCookie().getUID() == widget.data.ownerUid ||
+                            !hideMember
+                        ? 1
+                        : 0,
+                    child: Visibility(
+                      visible: MyCookie().getUID() == widget.data.ownerUid ||
+                          !hideMember,
+                      child: GestureDetector(
+                        onTap: () {
+                          setState(() {
+                            selectedIndex = 3;
+                            controller.requestRefresh();
+                          });
+                        },
+                        behavior: HitTestBehavior.translucent,
+                        child: Padding(
+                          padding: EdgeInsets.only(left: 10, right: 10),
+                          child: Column(
+                            children: [
+                              Text(
+                                '货帮成员',
+                                style: TextStyle(
+                                    color: selectedIndex == 3
+                                        ? MyColors.cFF4233
+                                        : MyColors.c666666,
+                                    fontSize: 15),
+                              ),
+                              Container(
+                                height: 10,
+                                child: Visibility(
+                                  child: SvgPicture.asset('images/svg/tab.svg'),
+                                  visible: selectedIndex == 3,
+                                ),
+                              )
+                            ],
+                            mainAxisAlignment: MainAxisAlignment.end,
+                          ),
+                        ),
                       ),
                     ),
                   )
                 ],
-                mainAxisAlignment: MainAxisAlignment.spaceAround,
               ),
             ),
           ),
@@ -592,7 +652,7 @@ class _GangInPageState extends State<GangInPage> {
                     Expanded(
                       child: GestureDetector(
                         onTap: () {
-                          queryShopMembers();
+                          queryShopMembers(true);
                         },
                         behavior: HitTestBehavior.translucent,
                         child: Container(
@@ -742,14 +802,169 @@ class _GangInPageState extends State<GangInPage> {
               ? SingleChildScrollView(child: noData())
               : ListView.builder(
                   itemBuilder: (c, index) {
-                    return MyViews().getNoPayGoodsItem(
-                        orders[index], context, widget.data.ownerUid);
+                    return Slidable(
+                      child: MyViews().getNoPayGoodsItem(
+                          orders[index], context, widget.data.ownerUid),
+                      actionPane: SlidableDrawerActionPane(),
+                      enabled: orders[index].type == orderTypeOfflineTransfer &&
+                          orders[index].buyerUid == MyCookie().getUID(),
+                      actionExtentRatio: 0.25,
+                      secondaryActions: <Widget>[
+                        SlideAction(
+                          child: Container(
+                            child: Container(
+                              decoration: BoxDecoration(
+                                borderRadius: BorderRadius.circular(30),
+                                color: MyColors.cFF4233,
+                              ),
+                              height: 60,
+                              width: 60,
+                              child: SvgPicture.asset(
+                                'images/svg/del.svg',
+                                height: 40,
+                                width: 40,
+                              ),
+                              alignment: Alignment.center,
+                            ),
+                          ),
+                          onTap: () {
+                            showSimpleDialog(
+                                '将删除订单(${orders[index].uid})', context, () {
+                              Navigator.pop(context);
+                              deleteOrder(orders[index]);
+                            });
+                          },
+                        )
+                      ],
+                    );
                   },
                   itemCount: orders.length,
                   padding: EdgeInsets.only(left: 10, right: 10, top: 10),
                 ),
         ),
       );
+    } else if (selectedIndex == 3) {
+      return Expanded(
+        child: SmartRefresher(
+          controller: controller,
+          onRefresh: onRefresh,
+          onLoading: onLoading,
+          enablePullDown: true,
+          enablePullUp: true,
+          child: member.length == 0
+              ? SingleChildScrollView(child: noData())
+              : Container(
+                  margin: EdgeInsets.only(top: 10),
+                  child: AzListView(
+                    itemBuilder: (c, index) {
+                      return GestureDetector(
+                        onTap: () {
+                          if (MyCookie().getUID() == store.ownerUid) {
+                            if (MyCookie().getUID() != member[index].userUid) {
+                              MyTools().toPage(
+                                  context, MemberDetailsPage(member[index]),
+                                  (then) {
+                                controller.requestRefresh();
+                              });
+                            }
+                          } else {
+                            return;
+                          }
+                        },
+                        behavior: HitTestBehavior.translucent,
+                        child: Container(
+                          padding: EdgeInsets.only(left: 15, right: 15),
+                          color: Colors.white,
+                          child: Column(
+                            children: [
+                              Container(
+                                margin: EdgeInsets.only(top: 8, bottom: 6),
+                                child: Row(
+                                  children: [
+                                    Row(
+                                      children: [
+                                        Container(
+                                          margin: EdgeInsets.only(right: 6),
+                                          child: ClipRRect(
+                                            child: MyViews().netImg(
+                                                imgURL(member[index].userPic),
+                                                42,
+                                                42),
+                                            borderRadius:
+                                                BorderRadius.circular(21),
+                                          ),
+                                        ),
+                                        MyViews().myText(
+                                            '${member[index].userName} ${store.ownerUid == MyCookie().getUID() ? '(${member[index].userUid})' : ''}',
+                                            MyColors.c333333,
+                                            15),
+                                        Visibility(
+                                          visible: member[index].role !=
+                                              shopUserMember,
+                                          child: Container(
+                                            decoration: BoxDecoration(
+                                                color: member[index].role ==
+                                                        shopUserStaff
+                                                    ? MyColors.cFF4233
+                                                    : MyColors.cFFCD00,
+                                                borderRadius:
+                                                    BorderRadius.circular(8)),
+                                            height: 16,
+                                            width: 30,
+                                            child: MyViews().myText(
+                                                member[index].role ==
+                                                        shopUserOwner
+                                                    ? "帮主"
+                                                    : "助手",
+                                                Colors.white,
+                                                10),
+                                            alignment: Alignment.center,
+                                            margin: EdgeInsets.only(left: 5),
+                                          ),
+                                        )
+                                      ],
+                                    ),
+                                    Visibility(
+                                      visible:
+                                          member[index].role != shopUserOwner &&
+                                              member[index].userUid !=
+                                                  MyCookie().getUID(),
+                                      child: GestureDetector(
+                                        child: Container(
+                                          margin: EdgeInsets.only(right: 10),
+                                          child: SvgPicture.asset(
+                                            'images/svg/透视.svg',
+                                            height: 25,
+                                            width: 25,
+                                          ),
+                                        ),
+                                        onTap: () {
+                                          queryWhetherThereIsANumberOfPerspectives(
+                                              member[index], store, context);
+                                        },
+                                        behavior: HitTestBehavior.translucent,
+                                      ),
+                                    ),
+                                  ],
+                                  mainAxisAlignment:
+                                      MainAxisAlignment.spaceBetween,
+                                ),
+                              ),
+                              Container(
+                                height: 0.5,
+                                color: MyColors.cE7E7E7,
+                              )
+                            ],
+                          ),
+                        ),
+                      );
+                    },
+                    itemCount: member.length,
+                    data: member,
+                  ),
+                ),
+        ),
+      );
     } else {
       return SingleChildScrollView(child: noData());
     }
@@ -761,6 +976,8 @@ class _GangInPageState extends State<GangInPage> {
       queryProducts();
     } else if (selectedIndex == 1) {
       unreceivedOrder();
+    } else if (selectedIndex == 3) {
+      queryShopMembers(false);
     } else {
       unpaidOrder();
     }
@@ -772,6 +989,8 @@ class _GangInPageState extends State<GangInPage> {
       queryProducts();
     } else if (selectedIndex == 1) {
       unreceivedOrder();
+    } else if (selectedIndex == 3) {
+      queryShopMembers(false);
     } else {
       unpaidOrder();
     }
@@ -910,7 +1129,7 @@ class _GangInPageState extends State<GangInPage> {
   List<MyShopBeanDataData> member = [];
   List<MyShopBeanDataData> helper = [];
 
-  queryShopMembers() {
+  queryShopMembers(bool toOwner) {
     MyDio().query({
       "key": "shop_user",
       "filters": {
@@ -923,21 +1142,27 @@ class _GangInPageState extends State<GangInPage> {
         MyShopBeanEntity entity =
             MyShopBeanEntity().fromJson(json.decode(response.data.toString()));
         member = entity.data.data;
-        helper.clear();
-        member.forEach((element) {
-          if (element.role == shopUserStaff) {
-            helper.add(element);
-          }
-        });
-        MyShopBeanDataData chatWith;
+        if (toOwner) {
+          helper.clear();
+          member.forEach((element) {
+            if (element.role == shopUserStaff) {
+              helper.add(element);
+            }
+          });
+          MyShopBeanDataData chatWith;
 
-        if (helper.length == 0) {
-          chatWith = member[
-              member.indexWhere((element) => element.role == shopUserOwner)];
+          if (helper.length == 0) {
+            chatWith = member[
+                member.indexWhere((element) => element.role == shopUserOwner)];
+          } else {
+            chatWith = helper[Random().nextInt(helper.length)];
+          }
+          MyTools().toPage(context, ChatPage(chatWith, null), (then) {});
         } else {
-          chatWith = helper[Random().nextInt(helper.length)];
+          controller.refreshCompleted();
+          controller.loadComplete();
+          setState(() {});
         }
-        MyTools().toPage(context, ChatPage(chatWith, null), (then) {});
       }
     }, (error) {});
   }
@@ -955,6 +1180,7 @@ class _GangInPageState extends State<GangInPage> {
   }
 
   StoreBeanDataData store;
+  bool hideMember = true;
 
   queryStoreInformation() {
     MyDio().query({
@@ -969,9 +1195,47 @@ class _GangInPageState extends State<GangInPage> {
         StoreBeanEntity entity =
             StoreBeanEntity().fromJson(json.decode(response.data.toString()));
         store = entity.data.data[0];
+        hideMember = store.hideMembers;
         setState(() {});
       }
       endRe(controller);
     }, (error) {});
   }
+
+  void queryWhetherThereIsANumberOfPerspectives(
+      MyShopBeanDataData data, StoreBeanDataData store, BuildContext context) {
+    MyDio().query({
+      "key": "user_vp",
+      "filters": {
+        "conditions": [
+          "user_uid == ${MyCookie().getUID()}",
+          "vp_key == $vpKeyXRay"
+        ]
+      },
+      "dims": userVpDims,
+      "paging": [1, 2000]
+    }, (response, hasError) {
+      UserVpBeanEntity entity =
+          UserVpBeanEntity().fromJson(json.decode(response.data.toString()));
+      if (entity.data.data.length != 0) {
+        MyTools().toPage(context, OtherPeopleSTurnoverPage(data), (then) {});
+      } else {
+        // showSimpleDialog('你还未获取透视道具或道具用完,请先购买次数再查看。', context, () {
+        //   Navigator.pop(context);
+        //   MyShopBeanDataData shop = MyShopBeanDataData();
+        //   shop.shopUid = store.uid;
+        //   shop.shopName = store.name;
+        //   shop.shopPic = store.picture;
+        //   MyTools().toPage(
+        //       context, PrivacyProtectionPropsPage(shop, vpKeyXRay), (then) {});
+        // });
+        MyShopBeanDataData shop = MyShopBeanDataData();
+        shop.shopUid = store.uid;
+        shop.shopName = store.name;
+        shop.shopPic = store.picture;
+        MyTools().toPage(
+            context, PrivacyProtectionPropsPage(shop, vpKeyXRay), (then) {});
+      }
+    }, (error) {});
+  }
 }

+ 109 - 158
lib/paegs/home_page/home_page.dart

@@ -282,160 +282,7 @@ class _HomePageState extends State<HomePage>
                               EdgeInsets.only(left: 10, right: 10, top: 12),
                           child: GestureDetector(
                             onTap: () {
-                              showModalBottomSheet(
-                                context: context,
-                                builder: (context) => BottomSheet(
-                                  onClosing: () {},
-                                  builder: (context) => Container(
-                                    height: 290,
-                                    child: Column(
-                                      children: [
-                                        Container(
-                                          height: 40,
-                                          padding: EdgeInsets.symmetric(
-                                              horizontal: 15),
-                                          child: Row(
-                                            children: [
-                                              Row(
-                                                children: [
-                                                  Text(
-                                                    '定位: ',
-                                                    style: TextStyle(
-                                                        color: MyColors.cFF4233,
-                                                        fontSize: 14),
-                                                  ),
-                                                  GestureDetector(
-                                                    onTap: () async {
-                                                      if (MyCookie().location !=
-                                                          null) {
-                                                        province = MyCookie()
-                                                            .location
-                                                            .province;
-                                                        city = MyCookie()
-                                                            .location
-                                                            .city;
-                                                        setState(() {});
-                                                        _reController
-                                                            .requestRefresh();
-                                                        Navigator.pop(context);
-                                                      } else {
-                                                        var locationStatus =
-                                                            await Permission
-                                                                .location
-                                                                .status;
-                                                        if (locationStatus
-                                                            .isDenied) {
-                                                          await Permission
-                                                              .location
-                                                              .request()
-                                                              .then(
-                                                                  (value) async {
-                                                            print(
-                                                                'Permission.location.request()-----$value');
-                                                            if (value ==
-                                                                PermissionStatus
-                                                                    .granted) {
-                                                              await AMapLocationClient.startup(
-                                                                  new AMapLocationOption(
-                                                                      desiredAccuracy:
-                                                                          CLLocationAccuracy
-                                                                              .kCLLocationAccuracyHundredMeters));
-                                                              await AMapLocationClient
-                                                                      .getLocation(
-                                                                          true)
-                                                                  .then(
-                                                                      (value) {
-                                                                        if (Platform.isAndroid) {
-                                                                          MyCookie().location = MyLocation(
-                                                                              province: value.province,
-                                                                              city: value.city,
-                                                                              formattedAddress: value.formattedAddress,
-                                                                              district: value.district,
-                                                                              latitude: value.latitude,
-                                                                              longitude: value.longitude);
-                                                                          EventBus().emit('getLocation');
-                                                                        } else if (Platform.isIOS) {
-                                                                          getAddressByLatitudeAndLongitude(value.latitude, value.longitude);
-                                                                        }
-                                                                _reController
-                                                                    .requestRefresh();
-                                                                Navigator.pop(
-                                                                    context);
-                                                              });
-                                                            }
-                                                          });
-                                                        }
-                                                      }
-                                                    },
-                                                    behavior: HitTestBehavior
-                                                        .translucent,
-                                                    child: Text(
-                                                      MyCookie().location !=
-                                                              null
-                                                          ? '${MyCookie().location.province} ${MyCookie().location.city}'
-                                                          : '获取定位',
-                                                      style: TextStyle(
-                                                          color:
-                                                              MyColors.cFF4233,
-                                                          fontSize: 14),
-                                                    ),
-                                                  ),
-                                                ],
-                                              ),
-                                              GestureDetector(
-                                                child: Text(
-                                                  '确定',
-                                                  style: TextStyle(
-                                                      color: MyColors.cFF4233,
-                                                      fontSize: 16),
-                                                ),
-                                                onTap: () {
-                                                  if (_address == null) {
-                                                    province = '北京市';
-                                                    city = '北京市';
-                                                    setState(() {});
-                                                    _reController
-                                                        .requestRefresh();
-                                                    Navigator.pop(context);
-                                                  } else {
-                                                    province = _address
-                                                        .currentProvince
-                                                        .province;
-                                                    city = _address
-                                                        .currentCity.city;
-                                                    setState(() {});
-                                                    _reController
-                                                        .requestRefresh();
-                                                    Navigator.pop(context);
-                                                  }
-                                                },
-                                                behavior:
-                                                    HitTestBehavior.translucent,
-                                              ),
-                                            ],
-                                            mainAxisAlignment:
-                                                MainAxisAlignment.spaceBetween,
-                                          ),
-                                        ),
-                                        Container(
-                                          height: 250.0,
-                                          child: AddressPicker(
-                                            style: TextStyle(
-                                                color: Colors.black,
-                                                fontSize: 17),
-                                            mode: AddressPickerMode
-                                                .provinceAndCity,
-                                            onSelectedAddressChanged:
-                                                (address) {
-                                              _address = address;
-                                            },
-                                          ),
-                                        ),
-                                      ],
-                                    ),
-                                  ),
-                                ),
-                              );
+                              addressSelection();
                             },
                             behavior: HitTestBehavior.translucent,
                             child: Container(
@@ -808,10 +655,7 @@ class _HomePageState extends State<HomePage>
   }
 
   queryAd() {
-    int count = 2;
-    if (container.length == 0) {
-      count = 20;
-    }
+    int count = 5;
     MyDio().query({
       "key": "ad",
       "filters": {
@@ -961,4 +805,111 @@ class _HomePageState extends State<HomePage>
       );
     }
   }
+
+  void addressSelection() {
+    StateSetter ss;
+    showModalBottomSheet(
+      context: context,
+      builder: (context) => BottomSheet(
+        onClosing: () {},
+        builder: (context) => Container(
+          height: 350,
+          child: Column(
+            children: [
+              StatefulBuilder(
+                builder: (c, s) {
+                  ss = s;
+                  return  Container(
+                    height: 40,
+                    color: Colors.white,
+                    padding: EdgeInsets.symmetric(horizontal: 15),
+                    child: Row(
+                      children: [
+                        Row(
+                          children: [
+                            Text(
+                              '定位到: ',
+                              style:
+                              TextStyle(color: MyColors.cFF4233, fontSize: 14),
+                            ),
+                            Text(_address==null?'北京市 北京市':'${_address.currentProvince.province} ${_address.currentCity.city}',
+                              style: TextStyle(
+                                  color: MyColors.cFF4233, fontSize: 14),
+                            ),
+                          ],
+                        ),
+                        GestureDetector(
+                          child: Container(
+                            height: 40,
+                            width: 60,
+                            alignment: Alignment.center,
+                            child: Text(
+                              '确定',
+                              style: TextStyle(color: MyColors.cFF4233, fontSize: 16),
+                            ),
+                          ),
+                          onTap: () {
+                            if (_address == null) {
+                              province = '北京市';
+                              city = '北京市';
+                              setState(() {});
+                              _reController.requestRefresh(); _address = null;
+                              Navigator.pop(context);
+                            } else {
+                              province = _address.currentProvince.province;
+                              city = _address.currentCity.city;
+                              setState(() {});
+                              _reController.requestRefresh(); _address = null;
+                              Navigator.pop(context);
+                            }
+                          },
+                          behavior: HitTestBehavior.translucent,
+                        ),
+                      ],
+                      mainAxisAlignment: MainAxisAlignment.spaceBetween,
+                    ),
+                  );
+                },
+              ),
+              GestureDetector(
+                onTap: (){
+                  if(MyCookie().location != null){
+                    province  = MyCookie().location.province;
+                    city  = MyCookie().location.city;
+                    setState(() {});
+                    _reController.requestRefresh();
+                    _address = null;
+                    Navigator.pop(context);
+                  }
+                },
+                behavior: HitTestBehavior.translucent,
+                child: Container(
+                  height: 60,
+                  color: Colors.white,
+                  padding: EdgeInsets.symmetric(horizontal: 20),
+                  child: Row(children: [
+                    Text('当前定位:',style: TextStyle(color: MyColors.c333333,fontSize: 16),),
+                    Text(MyCookie().location != null
+                        ? '${MyCookie().location.province} ${MyCookie().location.city}'
+                        : '请开启定位权限',style: TextStyle(color: MyColors.c333333,fontSize: 16),)
+                  ],),
+                ),
+              ),
+              Container(
+                height: 250.0,
+                child: AddressPicker(
+                  style: TextStyle(color: Colors.black, fontSize: 17),
+                  mode: AddressPickerMode.provinceAndCity,
+                  onSelectedAddressChanged: (address) {
+                    _address = address;
+                    ss((){});
+                  },
+                ),
+              ),
+            ],
+          ),
+        ),
+      ),
+    );
+  }
 }

+ 1 - 1
lib/paegs/mine_page/order_page/order_page.dart

@@ -169,7 +169,7 @@ class _OrderPageState extends State<OrderPage> {
                           child: MyViews()
                               .getNoPayGoodsItem(orders[index], context, -1),
                           actionPane: SlidableDrawerActionPane(),
-                          enabled: selectedIndex == 0,
+                          enabled: selectedIndex == 0 || (orders[index].type == orderTypeOfflineTransfer && orders[index].buyerUid == MyCookie().getUID()),
                           actionExtentRatio: 0.25,
                           secondaryActions: <Widget>[
                             SlideAction(

+ 1 - 1
lib/paegs/mine_page/wallet_page/wallet_page.dart

@@ -182,7 +182,7 @@ class _WalletPageState extends State<WalletPage> {
                   Container(
                     margin: EdgeInsets.only(top: 25),
                     child: Center(child: Text(
-                      '$total笔',
+                      '$total笔',
                       style: TextStyle(color: Colors.white, fontSize: 20),
                     ),),
                   ),

+ 8 - 8
lib/paegs/mine_page/wallet_page/withdraw_page/withdraw_page.dart

@@ -232,12 +232,12 @@ class _WithdrawPageState extends State<WithdrawPage> {
                                           color: MyColors.cE2A62D,
                                           fontSize: 14),
                                     ),
-                                    TextSpan(
-                                      text: '元',
-                                      style: TextStyle(
-                                          color: MyColors.c999999,
-                                          fontSize: 14),
-                                    ),
+                                    // TextSpan(
+                                    //   text: '元',
+                                    //   style: TextStyle(
+                                    //       color: MyColors.c999999,
+                                    //       fontSize: 14),
+                                    // ),
                                   ]),
                             ),
                           ),
@@ -247,7 +247,7 @@ class _WithdrawPageState extends State<WithdrawPage> {
                               margin: EdgeInsets.only(bottom: 8),
                               child: RichText(
                                 text: TextSpan(
-                                    text: '单笔限额:',
+                                    text: '单笔最高限额:',
                                     style: TextStyle(
                                         color: MyColors.c999999, fontSize: 14),
                                     children: [
@@ -273,7 +273,7 @@ class _WithdrawPageState extends State<WithdrawPage> {
                               margin: EdgeInsets.only(bottom: 8),
                               child: RichText(
                                 text: TextSpan(
-                                    text: '单笔最低提现金额:',
+                                    text: '单笔最低额:',
                                     style: TextStyle(
                                         color: MyColors.c999999, fontSize: 14),
                                     children: [

+ 125 - 125
pubspec.lock

@@ -5,217 +5,217 @@ packages:
     dependency: "direct main"
     description:
       name: address_picker
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.0.1"
   amap_location:
     dependency: "direct main"
     description:
       name: amap_location
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.2.0"
   archive:
     dependency: transitive
     description:
       name: archive
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.1.2"
   async:
     dependency: transitive
     description:
       name: async
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.5.0"
   audioplayers:
     dependency: "direct main"
     description:
       name: audioplayers
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.18.3"
   azlistview:
     dependency: "direct main"
     description:
       name: azlistview
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.1"
   badges:
     dependency: "direct main"
     description:
       name: badges
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.2.0"
   boolean_selector:
     dependency: transitive
     description:
       name: boolean_selector
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.1.0"
   cached_network_image:
     dependency: "direct main"
     description:
       name: cached_network_image
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.0"
   catcher:
     dependency: "direct main"
     description:
       name: catcher
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.6.6"
   characters:
     dependency: transitive
     description:
       name: characters
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.0"
   charcode:
     dependency: transitive
     description:
       name: charcode
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.2.0"
   clock:
     dependency: transitive
     description:
       name: clock
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.0"
   collection:
     dependency: transitive
     description:
       name: collection
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.15.0"
   common_utils:
     dependency: transitive
     description:
       name: common_utils
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.2.4"
   convert:
     dependency: "direct main"
     description:
       name: convert
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.1.1"
   crypto:
     dependency: "direct main"
     description:
       name: crypto
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.1"
   cupertino_icons:
     dependency: "direct main"
     description:
       name: cupertino_icons
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.3"
   decimal:
     dependency: transitive
     description:
       name: decimal
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.0"
   device_info_plus:
     dependency: transitive
     description:
       name: device_info_plus
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   device_info_plus_linux:
     dependency: transitive
     description:
       name: device_info_plus_linux
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   device_info_plus_macos:
     dependency: transitive
     description:
       name: device_info_plus_macos
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   device_info_plus_platform_interface:
     dependency: transitive
     description:
       name: device_info_plus_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.2"
   device_info_plus_web:
     dependency: transitive
     description:
       name: device_info_plus_web
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   device_info_plus_windows:
     dependency: transitive
     description:
       name: device_info_plus_windows
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   dio:
     dependency: "direct main"
     description:
       name: dio
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "4.0.0"
   disable_screenshots:
     dependency: "direct main"
     description:
       name: disable_screenshots
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.1.0"
   fake_async:
     dependency: transitive
     description:
       name: fake_async
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.2.0"
   ffi:
     dependency: transitive
     description:
       name: ffi
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.0"
   file:
     dependency: transitive
     description:
       name: file
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "6.1.1"
   flustars:
     dependency: "direct main"
     description:
       name: flustars
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.3.3"
   flutter:
@@ -227,35 +227,35 @@ packages:
     dependency: transitive
     description:
       name: flutter_blurhash
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.6.0"
   flutter_cache_manager:
     dependency: transitive
     description:
       name: flutter_cache_manager
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.2"
   flutter_image_compress:
     dependency: "direct main"
     description:
       name: flutter_image_compress
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.7.0"
   flutter_local_notifications:
     dependency: "direct main"
     description:
       name: flutter_local_notifications
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "5.0.0+4"
   flutter_local_notifications_platform_interface:
     dependency: transitive
     description:
       name: flutter_local_notifications_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.0"
   flutter_localizations:
@@ -267,42 +267,42 @@ packages:
     dependency: transitive
     description:
       name: flutter_mailer
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   flutter_page_indicator:
     dependency: transitive
     description:
       name: flutter_page_indicator
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.0.3"
   flutter_plugin_android_lifecycle:
     dependency: transitive
     description:
       name: flutter_plugin_android_lifecycle
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.1"
   flutter_slidable:
     dependency: "direct main"
     description:
       name: flutter_slidable
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.5.7"
   flutter_svg:
     dependency: "direct main"
     description:
       name: flutter_svg
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.21.0+1"
   flutter_swiper:
     dependency: "direct main"
     description:
       name: flutter_swiper
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.6"
   flutter_test:
@@ -319,399 +319,399 @@ packages:
     dependency: transitive
     description:
       name: fluttertoast
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "8.0.7"
   http:
     dependency: transitive
     description:
       name: http
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.13.3"
   http_parser:
     dependency: transitive
     description:
       name: http_parser
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "4.0.0"
   image:
     dependency: transitive
     description:
       name: image
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.2"
   image_cropper:
     dependency: "direct main"
     description:
       name: image_cropper
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.4.0"
   image_picker:
     dependency: "direct main"
     description:
       name: image_picker
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.7.5+2"
   image_picker_for_web:
     dependency: transitive
     description:
       name: image_picker_for_web
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   image_picker_platform_interface:
     dependency: transitive
     description:
       name: image_picker_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.1.0"
   install_plugin:
     dependency: "direct main"
     description:
       name: install_plugin
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.1"
   intl:
     dependency: transitive
     description:
       name: intl
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.17.0"
   js:
     dependency: transitive
     description:
       name: js
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.6.3"
   launch_review:
     dependency: "direct main"
     description:
       name: launch_review
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.1"
   logging:
     dependency: transitive
     description:
       name: logging
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   lpinyin:
     dependency: "direct main"
     description:
       name: lpinyin
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.3"
   mailer:
     dependency: transitive
     description:
       name: mailer
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "5.0.0"
   matcher:
     dependency: transitive
     description:
       name: matcher
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.12.10"
   meta:
     dependency: transitive
     description:
       name: meta
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.3.0"
   mime:
     dependency: transitive
     description:
       name: mime
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.0"
   octo_image:
     dependency: transitive
     description:
       name: octo_image
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.0+1"
   package_info:
     dependency: "direct main"
     description:
       name: package_info
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.4.3+4"
   package_info_plus:
     dependency: transitive
     description:
       name: package_info_plus
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   package_info_plus_linux:
     dependency: transitive
     description:
       name: package_info_plus_linux
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.2"
   package_info_plus_macos:
     dependency: transitive
     description:
       name: package_info_plus_macos
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.1"
   package_info_plus_platform_interface:
     dependency: transitive
     description:
       name: package_info_plus_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   package_info_plus_web:
     dependency: transitive
     description:
       name: package_info_plus_web
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   package_info_plus_windows:
     dependency: transitive
     description:
       name: package_info_plus_windows
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.1"
   path:
     dependency: transitive
     description:
       name: path
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.8.0"
   path_drawing:
     dependency: transitive
     description:
       name: path_drawing
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.5.1"
   path_parsing:
     dependency: transitive
     description:
       name: path_parsing
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.2.1"
   path_provider:
     dependency: "direct main"
     description:
       name: path_provider
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.1"
   path_provider_linux:
     dependency: transitive
     description:
       name: path_provider_linux
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   path_provider_macos:
     dependency: transitive
     description:
       name: path_provider_macos
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   path_provider_platform_interface:
     dependency: transitive
     description:
       name: path_provider_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.1"
   path_provider_windows:
     dependency: transitive
     description:
       name: path_provider_windows
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.1"
   pedantic:
     dependency: transitive
     description:
       name: pedantic
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.11.0"
   permission_handler:
     dependency: "direct main"
     description:
       name: permission_handler
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "6.1.3"
   permission_handler_platform_interface:
     dependency: transitive
     description:
       name: permission_handler_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.5.0"
   petitparser:
     dependency: transitive
     description:
       name: petitparser
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "4.1.0"
   platform:
     dependency: transitive
     description:
       name: platform
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.0"
   plugin_platform_interface:
     dependency: transitive
     description:
       name: plugin_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   process:
     dependency: transitive
     description:
       name: process
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "4.2.1"
   pull_to_refresh:
     dependency: "direct main"
     description:
       name: pull_to_refresh
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.6.5"
   qr:
     dependency: transitive
     description:
       name: qr
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   qr_flutter:
     dependency: "direct main"
     description:
       name: qr_flutter
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "4.0.0"
   rational:
     dependency: transitive
     description:
       name: rational
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.0+1"
   rxdart:
     dependency: "direct main"
     description:
       name: rxdart
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.26.0"
   scan:
     dependency: "direct main"
     description:
       name: scan
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.4.3"
   scroll_to_index:
     dependency: "direct main"
     description:
       name: scroll_to_index
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.0.6"
   scrollable_positioned_list:
     dependency: transitive
     description:
       name: scrollable_positioned_list
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.1.10"
   sentry:
     dependency: transitive
     description:
       name: sentry
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "5.0.0"
   shared_preferences:
     dependency: "direct main"
     description:
       name: shared_preferences
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.5"
   shared_preferences_linux:
     dependency: transitive
     description:
       name: shared_preferences_linux
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   shared_preferences_macos:
     dependency: transitive
     description:
       name: shared_preferences_macos
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   shared_preferences_platform_interface:
     dependency: transitive
     description:
       name: shared_preferences_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   shared_preferences_web:
     dependency: transitive
     description:
       name: shared_preferences_web
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   shared_preferences_windows:
     dependency: transitive
     description:
       name: shared_preferences_windows
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   simple_logger:
     dependency: "direct main"
     description:
       name: simple_logger
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.8.0+1"
   sky_engine:
@@ -723,182 +723,182 @@ packages:
     dependency: transitive
     description:
       name: source_span
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.8.0"
   sp_util:
     dependency: transitive
     description:
       name: sp_util
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.3"
   sqflite:
     dependency: "direct main"
     description:
       name: sqflite
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0+3"
   sqflite_common:
     dependency: transitive
     description:
       name: sqflite_common
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0+2"
   stack_trace:
     dependency: transitive
     description:
       name: stack_trace
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.10.0"
   stream_channel:
     dependency: transitive
     description:
       name: stream_channel
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.1.0"
   string_scanner:
     dependency: transitive
     description:
       name: string_scanner
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.1.0"
   synchronized:
     dependency: transitive
     description:
       name: synchronized
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.0"
   term_glyph:
     dependency: transitive
     description:
       name: term_glyph
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.2.0"
   test_api:
     dependency: transitive
     description:
       name: test_api
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.2.19"
   timezone:
     dependency: transitive
     description:
       name: timezone
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.7.0"
   tobias:
     dependency: "direct main"
     description:
       name: tobias
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.1.0"
   transformer_page_view:
     dependency: transitive
     description:
       name: transformer_page_view
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.1.6"
   typed_data:
     dependency: transitive
     description:
       name: typed_data
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "1.3.0"
   universal_io:
     dependency: transitive
     description:
       name: universal_io
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.4"
   url_launcher:
     dependency: "direct main"
     description:
       name: url_launcher
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "6.0.4"
   url_launcher_linux:
     dependency: transitive
     description:
       name: url_launcher_linux
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   url_launcher_macos:
     dependency: transitive
     description:
       name: url_launcher_macos
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   url_launcher_platform_interface:
     dependency: transitive
     description:
       name: url_launcher_platform_interface
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.3"
   url_launcher_web:
     dependency: transitive
     description:
       name: url_launcher_web
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   url_launcher_windows:
     dependency: transitive
     description:
       name: url_launcher_windows
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.0"
   uuid:
     dependency: "direct main"
     description:
       name: uuid
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "3.0.4"
   vector_math:
     dependency: transitive
     description:
       name: vector_math
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.1.0"
   win32:
     dependency: transitive
     description:
       name: win32
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "2.0.5"
   xdg_directories:
     dependency: transitive
     description:
       name: xdg_directories
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "0.2.0"
   xml:
     dependency: transitive
     description:
       name: xml
-      url: "https://pub.dartlang.org"
+      url: "https://pub.flutter-io.cn"
     source: hosted
     version: "5.1.1"
 sdks:

+ 1 - 1
pubspec.yaml

@@ -15,7 +15,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
 # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
 # Read more about iOS versioning at
 # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
-version: 1.0.93+1
+version: 1.0.95+1
 
 environment:
   sdk: ">=2.7.0 <3.0.0"